Spring 3.Xでは、フィールドをAutowireに入れるためにクラスにコンポーネントとして注釈を付ける必要がありますか?Springクラスは、プロパティをAutoWireにするためのコンポーネントでなければなりませんか?
のは、私が持っているとしましょう:
@Service("myBean")
public class Mybean {
}
public class Target {
@Autowired
@Qualifier("myBean")
private MyBean;
}
そしてMyBean.java
がcom.package.beans.MyBean package
内にあるその後、私のbeans.xmlの中
<context:component-scan base-package="com.package.beans" />
。
クラスTarget
には@Component
などのアノテーションを付ける必要がありますか?そのフィールドの1つをオートワイヤーするには?
"Target"にComponent( "target")を注釈した後でさえ、nullをautowiresし、クラスがあるパッケージでコンポーネントスキャンを設定しました。実際、同じパッケージ内の他のクラスコンポーネントを注釈したものの、コンポーネント( "ターゲット")注釈の後に "Target"が残っていないということはありません。どんなアイデアが間違っているのでしょうか? –
あなたはほぼ確実に 'new Target()'を呼び出しています。それは私が言いました "間違い"です。 – chrylis
私がeclipseにロードしたすべてのプロジェクトを検索すると、「new Target()」が1つも発生しません。これは問題ではありません。 –