クラスでのJavaの同等の春豆は、豆xmlファイルで設定および管理することができます。
、豆のインスタンス化:
コンストラクタの例は、静的ファクトリがインスタンス、インスタンス・ファクトリをインスタンス。
内容:
ビルダーの例:
XML設定ファイル:
一意のID、calss指定されたBean実装クラスは、完全修飾クラス名でなければなりません、あなたは、Bean1.javaファイル内Bean1の「公共のクラスBean1」を右クリックしてコピーQualifiel名が取得選択することができます。使用に注意してください「」区切り。
テスト機能:
XML設定ファイル・パスで定義された最初のテスト機能、あなたはそれが/で区切られたパスであるので、ここでは、COM開始からの注目を得るために右のディレクトリビューのコピーQualifiel名を選択することができます。
その後、豆、得られた機能getBeanインスタンスオブジェクトによって指定されたID、ノート型変換をインスタンス化するために、構成ファイルをロードします。
完全なコード:
パッケージcom.liu.instance.contructor。 パブリック クラスBean1 { }
<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> < 豆のxmlns = "http://www.springframework.org/schema/beans" のxmlns:XSI = "http://www.w3.org/2001 / XMLスキーマ・インスタンス」 のxsi:のschemaLocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd" > < ビーンID = "bean1" クラス= "com.liu.instance.contructor.Bean1" > </ 豆> </ 豆>
パッケージcom.liu.instance.contructor; インポートorg.springframework.context.ApplicationContext; インポートorg.springframework.context.support.ClassPathXmlApplicationContext、 パブリック クラスInstanceTest { 公共 静的 ボイドメイン(文字列[]引数){ // 定義構成ファイルのパス XMLPath =文字列"COM /劉/インスタンス/コンストラクタ/ beans1.xml" ; // インスタンス化するApplicationContextのビーン負荷設定ファイル。 ApplicationContextの= ApplicationContextの新しい新ClassPathXmlApplicationContext(XMLPath); // 上記のクラスで作成されたファイルで見つかった豆、Javaオブジェクトを決定するために、IDの設定ファイルを述べました。 Bean1 bean1 =(Bean1)applicationContext.getBean( "bean1" )。 System.out.println(bean1)。 } }
実行ショット:
静的工場の例:
XML設定ファイル:
一意のID、クラスファクトリのクラスは、工場出荷時の方法は、メソッド名、その植物を同定する方法です。
静的ファクトリクラス:
静的メソッドはBean2オブジェクトを返します。
パッケージcom.liu.instance.static_factory; / * * LSQ * 2019年9月10日 *静的ファクトリは、インスタンス化スプリングをインスタンスBean2 * / パブリック クラスBean2 { }
パッケージcom.liu.instance.static_factory; / * * LSQ * 2019年9月10日 春のインスタンス化する* staticファクトリ * / パブリック クラスMyBean2Factory { //はBean2オブジェクトを作成し 、パブリック 静的Bean2 createBean2(){ 返す 新新)(Bean2を; } }
パッケージcom.liu.instance.static_factory; インポートorg.springframework.context.ApplicationContext; インポートorg.springframework.context.support.ClassPathXmlApplicationContext; / * * LSQ * 2019年9月10日 *スプリング静的工場試験クラスインスタンスオブジェクト * / パブリック クラスInstanceTest { 公共 静的 ボイドメイン(文字列[] AGRSなど){ // 定義構成ファイルパス 文字列XMLPath = "COM /劉/インスタンス/ static_factory / beans2.xml" ; //は、対象インスタンス のApplicationContextをApplicationContextの= 新しい新しいClassPathXmlApplicationContext(XMLPath ); //関数を呼び出す // オブジェクトを通過getBean id属性値取得機能 (applicationContext.getBean( "bean2"にするSystem.out.printlnを)); } }
<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> < 豆のxmlns = "http://www.springframework.org/schema/beans" のxmlns:XSI = "http://www.w3.org/2001 / XMLスキーマ・インスタンス」 のxsi:のschemaLocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd" > < ビーンID = "bean2" クラス= "com.liu.instance.static_factory.MyBean2Factory" ファクトリメソッド= "createBean2" > </ ビーン> </ 豆>
実行ショット:
工場出荷時のインスタンスの例:
XML設定ファイル:
最初の二つのBeanの静的ファクトリクラスstaticファクトリクラス。第二は、植物に使用する方法を決定するbean3、ファクトリメソッドプロパティの構成例プラント、工場での方法です。
ファクトリクラス:
Bean3オブジェクトを返します。
完全なコード:
パッケージcom.liu.instance.factory; / * * LSQ * 2019年9月10日 *スプリング・ファクトリ・オブジェクトの例 * / パブリック クラスBean3 { }
<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> < 豆のxmlns = "http://www.springframework.org/schema/beans" のxmlns:XSI = "http://www.w3.org/2001 / XMLスキーマ・インスタンス」 のxsi:のschemaLocation = "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsd" > < ビーンID = "bean2" クラス= "com.liu.instance.static_factory.MyBean2Factory" ファクトリメソッド= "createBean2" > </ ビーン> </ 豆>
パッケージcom.liu.instance.factory; / * * LSQ * 2019年9月10日 *スプリング・ファクトリ・オブジェクトの例 * / パブリック クラスMyBean3Factory { パブリックMyBean3Factory(){ System.out.printlnは(「Bean3植物のインスタンス.. 。 " ); } 公共Bean3 createBean3(){ 戻り 新しい新しいBean3を(); } }
パッケージcom.liu.instance.factory; インポートorg.springframework.context.ApplicationContext; インポートorg.springframework.context.support.ClassPathXmlApplicationContext; / * * LSQ * 2019年9月10日 *春のテストクラスをインスタンス化する工場 * / パブリック クラス{InstanceTest3 パブリック 静的 ボイドメイン(文字列[]引数){ // 指定された設定ファイルパス 文字列XMLPath =「COM /劉/インスタンス/ファクトリー/ bean3.xml」; // ApplicationContextの負荷設定ファイルビーンインスタンス化する のApplicationContextを= ApplicationContextの新しい新ClassPathXmlApplicationContext(XMLPath)。 System.out.println(applicationContext.getBean( "bean3" )); } }
実行ショット:
三つの方法の違い: