一般的に、Spring での依存関係注入には次の 3 つの方法があります。
① set による代入
②コンストラクタを介して値を代入
#③p タグを介して値を代入
#推奨 Java 関連ビデオ チュートリアル: 議論を少し拡張してみましょう:1. set メソッドを通じて値を割り当てる
<bean id="teacher" class="org.szh.entity.Teacher" p:age="24" p:name="lq"> <property name="name" value="zs"></property> <property name="age" value="23"></property> </bean>主に
public class Teacher { private String name; private int age; public Teacher() { } public Teacher(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
2. コンストラクターを介して値を割り当てる
<bean id="teacher" class="org.szh.entity.Teacher"> <constructor-arg value="zs" ></constructor-arg> <constructor-arg value="24" ></constructor-arg> </bean>上記の Teacher クラスには、対応するコンストラクター メソッドが存在する必要があることに注意してください。 コンストラクターのパラメーター リストに多くの値がある場合、それらを 1 つずつ記述するのは非常に面倒です。現時点では、値を正確に割り当てるのに役立つ方法がいくつかあります。変数へ: 1. インデックス (添え字の値) を使用します 2.name (宣言された変数の名前) 3.type (宣言された変数の型) //コンストラクタのパラメータリストで宣言された型は必須です 矛盾する場合は値を渡すことができます 具体的な形式は次のとおりです:
<constructor-arg value="zs" 你要用来做辨认的属性(index/name/type)="..."></constructor-arg> <constructor-arg value="24" 你要用来做辨认的属性(index/name/type)="..."></constructor-arg>別の形式もありますここでの注意点: Type タグ内で参照を渡したい場合は、value を使用することはできません。ref:
<constructor-arg ref="teacher"></constructor-arg>
3 を使用する必要があります。p tag## を通じて値を割り当てます。 #コンパイラが sts をインストールしていない場合は、ここで注意する必要があります。sts をインストールしている場合は、applicationContext.xml の構成ステートメントに次の文を追加する必要があります。
xmlns:p="http://www.springframework.org/schema/p"
sts をインストールしている場合は、 Namespaces で直接確認してください:
具体的な記述方法は次のとおりです:
<bean id="teacher" class="org.szh.entity.Teacher" p:age="24" p:name="lq"> </bean>
タグに p:xxx="xxx" を追加するだけです。
おすすめの Java 関連記事とチュートリアル:
Java 入門チュートリアル以上がJava Springで依存関係注入を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。