私は最近、Spring が少し含まれている Java プロジェクトを与えられ、それを取り除くように頼まれました。私はSpringについて何も知らないので、Springについて学ぶのに1日も費やしたくありません。
私が見ることができる依存関係のほとんどは、@Autowired との関係です。@Autowired を削除する方法について何かアドバイスはありますか? シングルトンを作成して @Autowired フィールドを手動で設定するのと同じくらい簡単ですか?
私は最近、Spring が少し含まれている Java プロジェクトを与えられ、それを取り除くように頼まれました。私はSpringについて何も知らないので、Springについて学ぶのに1日も費やしたくありません。
私が見ることができる依存関係のほとんどは、@Autowired との関係です。@Autowired を削除する方法について何かアドバイスはありますか? シングルトンを作成して @Autowired フィールドを手動で設定するのと同じくらい簡単ですか?
Spring は @Autowired フィールドを検出し、Spring で構成できる既存の「Bean」の 1 つにフィールドを設定します。
Bean の大部分はシングルトンですが、Spring が非シングルトンのオートワイヤリングを使用することも可能だと思います。
コードを提供していないので (理由は理解できます)、オートワイヤーされたフィールドを調べて、それらがシングルトンとして使用されているかどうかを判断することをお勧めします。そうであれば、シングルトンを作成してフィールドを手動で設定するのと同じくらい簡単です。
javax.inject.Inject
標準の Java依存性注入アノテーションを知っていますか? そのクラスがクラスパス上にある場合、Spring は依存関係を解決するためにそれもサポートします。@Autowired
ほとんどの場合、Springを に置き換えるだけです@Inject
。supportのJavadoc@Inject
およびSpring リファレンスを参照し@Inject
てください。