違い: 1. @Autowired は Spring によって提供され、@Resource は J2EE によって提供され、JDK1.6 以降が必要です; 2. @Autowired は byType に従ってのみ挿入され、@Resource は byName によって自動的に挿入されますデフォルトで、byType に応じた Inject も提供されます。
関連する推奨事項: 「Java ビデオ チュートリアル 」
は Spring 3.X @ でよく使用されます。アセンブリ用の Autowired と @Resource。
これら 2 つの注釈の違いは何だろうかと思わずにはいられません。 ? ?
類似点:
@Resource は @Autowired と同等であり、フィールドまたは属性の setter メソッドでマークできます。
相違点:
(1) プロバイダー: @Autowired は org.springframework.beans.factory.annotation.Autowired によって提供されます。つまり、Spring によって提供されます。提供; @Resource は、J2EE によって提供され、JDK1.6 以降を必要とする javax.annotation.Resource によって提供されます。
(2) 注入方法: @Autowired は byType に従ってのみ注入します。@Resource はデフォルトで byName によって自動的に注入し、byType に従って注入も提供します。
(3) 属性: @Autowired依存関係をタイプ Object でアセンブルします。デフォルトでは、依存オブジェクトが存在する必要があります。null 値が許可される場合は、その required 属性を false に設定できます。名前でアセンブリを使用したい場合は、 @Qualifier アノテーションと組み合わせて使用できます。 @Resource には、name と type という 2 つの重要な属性があります。 name 属性は byName を指定します。name 属性が指定されていない場合、フィールドにアノテーションが付けられている場合、デフォルトでフィールドの名前が Bean 名として使用され、依存オブジェクトを検索します。アノテーションが setter にアノテーションされている場合は、フィールドの名前が Bean 名として使用されます。属性のメソッドでは、デフォルトで属性名が Bean 名として使用されます。 @Resource が name 属性を指定せず、依存オブジェクトがデフォルト名に従って見つからない場合、@Resource アノテーションは型によるアセンブリにフォールバックすることに注意してください。ただし、name 属性を指定すると、名前によってのみアセンブルできます。
@Resource Assembly Sequence
1. 名前と型を同時に指定すると、アセンブリの Spring コンテキストから一致する Bean のみが検索されます。見つからない場合はスローされます。 Exception
2. name が指定されている場合、アセンブリのコンテキストから名前 (id) に一致する Bean が検索されます。Bean が見つからない場合は、例外が発生します。 be throw
3. タイプが指定されている場合、アセンブリのコンテキストからタイプが一致する唯一の Bean を検索します。Bean が見つからない場合、または複数の Bean が見つかった場合は、例外がスローされます
4. 名前も型も指定されていない場合は、byName メソッドが自動的に使用されます。アセンブリ; 一致しない場合はプリミティブ型にフォールバックして一致し、一致する場合は自動的にアセンブルされます。
# @Resource アノテーションをフィールドに使用すると、setter メソッドを記述する必要がなくなり、このアノテーションは J2EE に属するため、Spring との結合が軽減され、コードがよりエレガントになります。 プログラミング関連の知識について詳しくは、プログラミング学習 Web サイト をご覧ください。 !
以上が@autowired と @resource の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Dreamweaver Mac版
ビジュアル Web 開発ツール

メモ帳++7.3.1
使いやすく無料のコードエディター
