率ε:依存性注入、DI
コントロールと依存性注入の反転は同じ考えの異なるバージョンです。
オブジェクトがコンテナに依存して作成します。コンテナによって提供されるオブジェクトのプロパティが設定されています。
割り当てプロセスオブジェクトのプロパティは、移植と呼ばれています。
方法.Springつの属性を挿入:
1.共通プロパティ(文字列型と基本データ)、プロパティによって直接提供することができます
<ビーンID = "ユーザ" クラス = "cn.sxt.vo.User">
<プロパティ名= "名前"値= "张三疯" />
<プロパティ名= "年齢"値= "22" />
< /豆>
2.配列を設定しました
<プロパティ名= "趣味"> <配列> <値>足球</値> <値>蓝球</値> <値>乒乓球</ value>の </アレイ> </プロパティ>
3.List設定と同じ配列
<プロパティ名= "addreess"> <リスト> <値>北京昌平</ value>の <値>山西平遥</ value>の <値> XXXX </ value>の </リスト> </ property>の
若しくは
<プロパティ名= "addreess"> <配列> <値>北京昌平</値> <値>山西平遥</値> <値> XXXX </ value>の </アレイ> </プロパティ>
4.設定したコレクションセット
<プロパティ名= "図書"> <設定> <値>大话设计模式</ value>の <値> head.firstのjava </ value>の </設定> </ property>の
5.Mapコレクションセット
<プロパティ名= "カード"> <マップ> <エントリーキー= "农业银行"> <値> ABC </ value>の </ entry>の <エントリーキー= "工商银行"値= "ICBC" /> </マップ> </ property>の
6.プロパティインジェクション
<プロパティ名= "外観"> <小道具> <プロパキー= "重量"> 60キロ</小道具> <プロパキー= "高さ"> 170センチメートル</小道具> </小道具> </プロパティ>
7.注入オブジェクト
<! - 噴射オブジェクト refは別のコンテナオブジェクト識別子への参照である - > <プロパティ名= "役割" REF = " myRoleの " /> </ビーン> <ビーンID = " myRoleの " クラス = " cn.sxt.vo.Role "> <プロパティ名=" ID "値=" 1001 "/> <プロパティ名="名前"値="管理者「/> </豆>
8. Pの名前空間インジェクション
ヘッダファイルをインポートする必要があります
<豆のxmlns = "http://www.springframework.org/schema/beans" のxmlns:XSI = "http://www.w3.org/2001/XMLSchema-instance" のxmlns:P = "のhttp:// WWW .springframework.org /スキーマ/ P " のxsi:schemaLocationの =" http://www.springframework.org/schema/beans ます。http:// www.springframework.org/schema/beans/spring-beans.xsd ">
コンフィギュレーション
<! -注入されたp-プロパティの名前空間の自然のプロパティ、プロパティを設定する方法を提供することが望ましい書き込み属性Beanのプロパティを除いて、 - > <豆ID =「R1」クラス =「cn.sxt.vo.Role " P:ID =" 1007 " P:名 =" VIP「> </豆>
9. Cの名前空間注射
ヘッダファイルをインポートする必要があります
<豆のxmlns = "http://www.springframework.org/schema/beans" のxmlns:XSI = "http://www.w3.org/2001/XMLSchema-instance" のxmlns:P = "のhttp:// WWW .springframework.org /スキーマ/ P " のxmlns:C = "http://www.springframework.org/schema/c " のxsi:schemaLocationの =" http://www.springframework.org/schema/beans のhttp:// www.springframework.org/schema/beans/spring-beans.xsd ">
コンフィギュレーション
<! - C-コンストラクタの名前空間の注入は、本質的にコンストラクタ・インジェクションを参加され、コンストラクタのパラメータを提供する必要が - > <豆ID = "R2" クラス = "cn.sxt.vo.Role" C:ID = "1006" C:名= "メンバー"> </豆>
10.ヌル注入
<ビーンID = "R3" クラス = "cn.sxt.vo.Role"> <プロパティ名= "ID"値= "10" /> <プロパティ名= "名前"> < NULL /> </ property>の < /豆>
要約:春に、噴射特性は、一般的に2つのカテゴリに分けます。
1.コンストラクタ・インジェクション
2.注入方法を設定します
なお:建設の対応する方法を提供する必要がコンストラクタインジェクションを使用する場合、注入法を使用する場合、対応する設定方法を提供する必要性を設定します。