2016-03-28 4 views
0

依存性注入にguiceを使用しています。 ここでは、スプリングブートを使用して新しいプロジェクトを作成します。私たちはスプリングブートを使用しているので、guiceの代わりに依存性注入のためにスプリングを使用するほうが良いと思います。バネでのアノテーションのバインド

guiceではBinding Annoationを使用しました。これは、利用可能な複数のBeanがあり、注釈に従って注入できる場合に非常に便利です。

春に似ているのと同じですか?それに応じてBeanの名前を付け、@Autowireと@Qualifierで使用する必要がありますか?

答えて

1

あなたには、いくつかのタイプのいずれかの豆を持っているときは、 @Autowiredを使用することができます。多くの豆例構成クラスの

@Autowired 
private MyBean myBean; 

:@Qualifierあなたには、いくつかのタイプの複数のBeanを持っていて、いくつかの特定をしたい( "someNameという")と@Autowired

@Configuration 
public class MyConfiguration { 

@Bean(name="myFirstBean") 
public MyBean oneBean(){ 
    return new MyBean(); 
} 

@Bean(name="mySecondBean") 
public MyBean secondBean(){ 
    return new MyBean(); 
} 
} 

@Autowired 
@Qualifier("myFirstBean") 
private MyBean myFirstBean; 

@Autowired 
@Qualifier("mySecondBean") 
private MyBean mySecondBean; 

あなたができる同じタイプのすべてのBeanを注入します:これは、単純なオートワイヤリングである

@Autowired 
private List<MyBean> myBeans; 
1

まず手例:

public class MovieRecommender { 

private final CustomerPreferenceDao customerPreferenceDao; 

@Autowired 
private MovieCatalog movieCatalog; 

@Autowired 
public MovieRecommender(CustomerPreferenceDao customerPreferenceDao) { 
    this.customerPreferenceDao = customerPreferenceDao; 
} 
// ... 
} 

これは春のフレームワーク、すなわち豆と依存性の注入の非常に基本的な概念を尋ねる質問です。

私が提案しようとしているのは、kickstart-sampleのようなサンプルサンプルプロジェクトの1つを実行し、コードで遊んでいるときに慣れ親しんでください。

次に、公式ドキュメントにジャンプして参考にしても問題ありません。注釈を使用するときには注意すべき選択肢が増えています。

http://docs.spring.io/spring/docs/4.3.0.BUILD-SNAPSHOT/spring-framework-reference/htmlsingle/#beans-autowired-annotation

+0

を。私の質問は、アプリケーションコンテキストで利用可能な複数のBeanをオートワイヤリングすることです。 https://github.com/google/guice/wiki/BindingAnnotations#binding-annotationsがそれを行います。 Springと同じように使用できます – sag

関連する問題