日々の開発では、カスタムコンポーネントを使用すると、その後、基本的なSpringコンテナのコンポーネントの一部を使用するカスタムコンポーネントが***認識を達成するために、オブジェクトを作成するときの方法を、それはインターフェース指定インジェクション関連のコンポーネントを呼び出します。例えば:
次のようにApplicationContextAwareは、春IOC容器で得られたカスタムコンポーネントとすることができるインタフェースを実装します。
パブリック クラスカラー実装ApplicationContextAware、BeanNameAware、EmbeddedValueResolverAware { 専用のApplicationContextのApplicationContext; 公共 ボイド setApplicationContext(ApplicationContextのApplicationContextの)がスローBeansException { // 。次いでApplicationContextAwareインターフェースを実装し、この方法は、保存用いてSpringコンテナを追加して来るために使用されてもよい 。この .applicationContext = ApplicationContextの; } 公共 ボイドsetBeanName(文字列名){ // BeanNameAwareメソッドは、現在のBean IOCコンテナの名前を与えることができるインターフェイスを実装した後; のSystem.out.printlnは(「現在のBeanコンテナ名は」+ 名前); } 公共 ボイドsetEmbeddedValueResolver(StringValueResolverリゾルバ){ // もし文字列値リゾルバに取得することができます実現EmbeddedValueResolverAwareインタフェースの後、 するSystem.out.println( "こんにちは、$ {os.name}、私は#90 * {20}でした" ) ; } }
テストクラスを実行し、次のような結果は次のとおりです。
コンテナ内の現在のBean名:色
ハローマックOS X、私は1800年です
拡張:あなたが*** Awareのインタフェースを実現するために、他の基礎となるコンポーネントを挿入します。