問題タブ [jsr330]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JSR-330 が Jersey と Spring で動作しないのはなぜですか?
その中に Bean があり@RequestScope
、それをシングルトンの 1 つに注入すると、リクエスト スコープとしてではなく、シングルトンとして注入されます。ただし、を に変更する@RequestScope
と@Scope( value = "request", scopeName = "request", proxyMode = ScopedProxyMode.TARGET_CLASS)
、Spring は Bean をリクエスト スコープとして作成し、それらをシングルトンに正しく注入します。
これに関するSpringのドキュメントを読みました:
JSR-330 のデフォルト スコープは、Spring のプロトタイプに似ています。ただし、Spring の一般的なデフォルトとの一貫性を保つために、Spring コンテナーで宣言された JSR-330 Bean はデフォルトでシングルトンになっています。シングルトン以外のスコープを使用するには、Spring の @Scope アノテーションを使用する必要があります。javax.inject は @Scope アノテーションも提供します。ただし、これは独自の注釈を作成するためだけに使用することを意図しています。
@RequestScoped
これは、Spring によって実際に無視されているということでもありますか? Spring でこの問題を解決するプロバイダー/リゾルバーはありますか? JSRアノテーションのみを使用する必要があるため、可能な限りSpringのアノテーションの@RequestScoped
代わりにアノテーションを使用したい@Scope
java - Spring で @Inject を使用したフィールド インジェクション
@Inject
Springでの動作に奇妙な動作があります。この例はうまくいきます:
しかし、 に置き換える@Autowired
と、 is であるため@Inject
、showHome
メソッドがスローされます。セッター注入と同じこと。しかし、両方のコンストラクター注入を使用すると、うまく機能します。NullPointerException
someBean
null
@Autowired
@Inject
なぜそれが起こるのですか?
私はSpring 4.3.1を使用しています。私の依存関係はpom.xml
次のようになります。
java - JSR-330 の Inject と Provider の違いは何ですか?
全て
JSR-330 の Inject と Provider の違いがわかりません。私はGoogle Guiceを使用しており、毎日使用しています.JSR @Inject
-330ではProvider<T>
.
私の質問は
- とはどういう意味
Provider<T>
ですか? - いつできる
Provider<T>
? - との違いは
@Inject
何ですか?
前もって感謝します。