春ベースのコンストラクタ依存性注入の機能とセッター

ベースのコンストラクタ依存性注入

私たちは、指定されたクラス内のBeanタグが初期化され、初期化プロセスは、自然に、我々はまた、このコンストラクタ完全な依存性の注入を使用することができ、コンストラクタを呼び出します、知っています。

クラスを作成します。

パブリック クラステキストエディタ{
     公共のテキストエディタ(スペルチェッカースペルチェッカー){
        System.out.println( "テキストエディタコンストラクタ" );
    }

    公共のテキストエディタ(文字列S){
        System.out.println(S);
    }
}

見ることができるように2つのコンストラクタがあります。

最初のパラメータは、コンストラクタのカスタム型で、第二のタイプは文字列です。設定ファイル内のパラメータを書いて二つの異なるタイプが同じではありませんが、以下が挙げられるでしょう。

その後、テストクラスを作成します。

パブリック クラスMainApps {
     公共 静的 ボイドメイン(文字列[]引数){
        AbstractApplicationContextコンテキスト = 新しい ClassPathXmlApplicationContext( "applicationContext.xmlを" );
        テキストエディタエディタ =(テキストエディタ)context.getBean( "テキスト" );
    }
}

次のように設定ファイル:

< ビーンID =「テキスト」クラス=「Dependency.injection.TextEditor」>が
     < コンストラクタArg- タイプ=「java.lang.Stringで」=「これはコンストラクタインジェクションの値である」/> 
</ >

設定ファイルは、一般的な豆のタグに加えて、ラベルは、コンストラクタ、引数コンストラクタ・インジェクションを完了する必要があります。

テストクラスの出力を実行します。

これは、値コンストラクタ・インジェクションであります

コンストラクタは、上記コールする場合は、次のように設定ファイルは読み取ります。

< ビーンID = "テキスト" クラス= "Dependency.injection.TextEditor" > 
  < コンストラクタ引数- REF = "スペルチェッカー" /> 
</ ビーン> 
< ビーンID = "スペルチェッカー" クラス= "Dependency.injection.SpellChecker" />

注意:

1.あなたは、REFを直接使用するオブジェクトへの参照を渡す必要がある場合、あなたは組み込みデータ型のJavaを渡す必要がある場合は、型宣言で入力する必要が値をして、値を設定します。

2.パラメータの設定パラメータの複数のパラメータリスト場合、送信順序は、パラメータリストの順序です。

 

注入のベースの依存設定値機能

完全な依存性注入に提供する機能を呼び出すことによってビーン値。

ファーストクラスを準備します。

パブリック クラステキストエディタ{
     プライベート文字列名;
    // 设值函数
    公共 ボイドのsetName(文字列名){
         この .nameの= 名前。
    }

    公共 のボイドのgetName(){
        System.out.println(この.nameの);
    }

}

なお、プライベートプロパティ名は、次のBeanによって、この属性の値を設定します。

そして、テストクラスを準備します。

パブリック クラスMainApps {
     公共 静的 ボイドメイン(文字列[]引数){
        AbstractApplicationContextコンテキスト = 新しい ClassPathXmlApplicationContext( "applicationContext.xmlを" );
        テキストエディタエディタ =(テキストエディタ)context.getBean( "テキスト" );
        editor.getName();
    }
}

次のように設定ファイル:

< ビーンID = "テキスト" クラス= "Dependency.injection.TextEditor" > 
  < プロパティ= "名前" = "李四" /> 
</ >

テストクラスの出力を実行します。

ジョン・ドウ

注意:

1関数の値が同じリファレンスを使用し、参照を渡すことによって提供されてもよいです。

2.プロファイルは、プロパティの値の関数を備えています。コンストラクタ・インジェクションはコンストラクタ、引数であります

 

おすすめ

転載: www.cnblogs.com/lbhym/p/11929805.html