Springの@Autowiredおよび@Resource

@AutowiredはSpringアノテーション、org.springframework.beans.factory.annotation.Autowiredです。

 @ResourceはSpringアノテーションではなく、jdk1.6でサポートされるjavax.annotation.Resourceです。

共通点:

     Beanの装備、フィールドへの書き込み、またはsetterメソッドでの書き込み

違い:

     タイプごとの@Autowiredデフォルト機器

           依存オブジェクトが存在する必要があります。null値が許可されている場合は、そのrequiredプロパティをfalseに設定できます@Autowired(required = false)

名前アセンブリを@Qualifireアノテーションとともに使用することもできます

 

要約:

  @Autowired自動注釈。たとえば、1つのクラス、2つの実装クラス、@ Autowiredは注入する実装クラスを認識せず、Resourceにはname属性があります。

区別できる

 

1. @Autowiredと@Resourceの両方を使用してBeanをアセンブルでき、どちらもフィールドまたはセッターメソッドで記述できます。

2. @Autowiredは、デフォルトでタイプごとにアセンブルされます(このアノテーションは業界の春に属します)。デフォルトでは、依存オブジェクトが存在する必要があります。null値を許可する場合は、次のようにその必須プロパティをfalseに設定できます:@Autowired(必須= false)、名前のアセンブリを使用する場合は、次のように@Qualifierアノテーションと組み合わせて使用​​できます。

 

 

3. @Resource(この注釈はJ2EEに属します)、デフォルトは名前に従ってアセンブルすること、名前はname属性で指定できます。name属性が指定されていない場合、フィールドに注釈が書き込まれると、フィールド名がデフォルトでインストール名検索に使用されます。注釈は、アセンブリの属性名を取得するためにデフォルトでセッターメソッドに書き込まれます。名前に一致するBeanが見つからない場合は、タイプに従ってアセンブルされます。ただし、name属性が指定されている場合は、名前に従ってのみアセンブルされることに注意してください。

 

 

 

おすすめ

転載: www.cnblogs.com/weigy/p/12729914.html