違い: 1. @Autowired アノテーションは Spring によって提供され、byType に従ってのみ挿入されますが、@resource アノテーションは J2EE によって提供され、デフォルトで byName に従って自動的に挿入されます。 2. @Autowired はデフォルトでタイプによってアセンブルされ、@Resource はデフォルトで名前によってアセンブルされます。
関連する推奨事項: 「Java ビデオ チュートリアル 」
Spring は独自の @Autowired アノテーションをサポートするだけではありませんは、JSR-250 仕様で定義されたいくつかのアノテーションもサポートしています。例: @Resource、@PostConstruct、@PreDestroy
1、@Autowired
は Spring によって提供され、byType
に従ってのみ注入されます。 2 , @Resource
は J2EE によって提供され、デフォルトで byName によって自動的に挿入されます。
@Resource には 2 つの重要な属性があります: name と type
Spring は @Resource にアノテーションを付けます。 name 属性は Bean の名前に解決され、type 属性は Bean のタイプに解決されます。したがって、name 属性を使用する場合は byName 自動挿入戦略が使用され、type 属性を使用する場合は byType 自動挿入戦略が使用されます。 name 属性も type 属性も指定されていない場合は、リフレクション メカニズムを通じて byName 自動挿入戦略が使用されます。
@リソースアセンブリシーケンス:
(1) 名前と型を同時に指定した場合、アセンブリの Spring コンテキストから一致する Bean のみが検索されます。
(2) name を指定すると、Spring コンテキストからアセンブリの名前 (id) に一致する Bean が検索され、Bean が見つからない場合は例外がスローされます
(3) タイプが指定されている場合、アセンブリの Spring コンテキストから一致するタイプを持つ唯一の Bean を検索します。Bean が見つからないか、複数の Bean が見つかった場合は、例外がスローされます
(4) 名前も型も指定しない場合は、自動的に byName メソッドが使用され、アセンブルが行われます。一致するものがない場合は、プリミティブ型にフォールバックして一致し、一致するものがある場合はオートワイヤします。
@Resource の機能は、@Autowired が byType に従って自動的に挿入されることを除いて、@Autowired と同等です。
3. 使用方法の違い
(1) @Autowired と @Resource の両方を Bean のアセンブルに使用でき、どちらも フィールドに記述できます。 または setterメソッド
(2)@Autowiredはデフォルトでタイプごとにアセンブルされます。デフォルトでは、依存オブジェクトが存在する必要があります。 null 値を許可する には、その required 属性 を false に設定できます。名前アセンブリ を使用したい場合は、 @Qualifier アノテーション と組み合わせて使用できます。
(3)@Resource, はデフォルトで名前 に従ってアセンブルされます。名前は name 属性 を通じて指定できます。 name 属性が指定されていない場合、 フィールド にアノテーションが記述されている場合、名前検索では デフォルトでフィールド名 が使用されます。 setter メソッドにアノテーションが記述されている場合、デフォルトで属性名がアセンブリに使用されます。 が名前に一致する Bean を見つけられない場合、 はタイプ に従ってアセンブルされます。ただし、name 属性が指定されている場合は、名前に従ってのみアセンブルされることに注意してください。
フィールドには @Resource アノテーションを使用することをお勧めします。これにより、setter メソッドを記述する必要がなくなり、このアノテーションは J2EE に属し、Spring との結合が軽減されます。@リソースノート
プログラミング教育をご覧ください。 !
以上が@autowired アノテーションと @resource アノテーションの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。
