[解決済み] EJBと@Injectのどちらを使うべきですか?
質問
こんな質問がありました。 Injectと@EJBの違いは何ですか? しかし、私は何の知恵も得られなかった。私はJava EEをやったことがなく、依存性注入の経験もないので、何を使うべきか理解できないのです。
は
@EJB
は古いインジェクションの方法ですか?このアノテーションを使用した場合、EJBコンテナによってインジェクションが行われるのでしょうか?
@Inject
は新しいCDIフレームワークを使用するのですか?この違いは何ですか?
@Inject
ではなく
@EJB
ということでしょうか?
解決方法は?
その
@EJB
は EJB のインジェクションにのみ使用され、かなり以前から利用可能です。
@Inject
は、あらゆるマネージドビーンの注入が可能で、新しいCDI仕様の一部です(Java EE 6以降)。
簡単なケースでは
@EJB
を
@Inject
. より高度な場合(たとえば
@EJB
のような属性があります。
beanName
,
lookup
または
beanInterface
を使用する場合よりも
@Inject
を定義する必要があります。
@Producer
フィールドまたはメソッドを使用します。
の違いを理解するために、これらの資料が役に立つかもしれません。
@EJB
と
@Produces
とその方法を紹介します。
アントニオ・ゴンカルベスさんのブログです。
CDI 前編
CDIパートII
CDI 第三部
JBoss Weldのドキュメントです。
CDIとJava EEエコシステム
StackOverflowです。
条件に基づいて@EJBビーンをインジェクトする
関連
-
スレッド "main" で例外発生 java.lang.ArrayIndexOutOfBoundsException: 0 at One1.main(One1.java:3)
-
HttpClientがGZIP形式でない場合の対処法
-
javax.net.ssl.SSLException: 読み取りエラー: ssl=0xdeae5100: システムコール中の I/O エラー、接続 res
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み] serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
-
[解決済み] java.lang.UnsupportedClassVersionError を修正する方法。サポートされていないメジャー.マイナーバージョン
-
[解決済み] 整数の平方根が整数であるかどうかを判断する最速の方法
-
[解決済み] Javaで数値を小数点以下n桁に丸める方法
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
-
[解決済み] EJB3.1とCDIはどこで使うのか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
java.util.NoSuchElementException 原因解析と解決方法
-
java の例外が発生しました java
-
eclipse で「アクセス制限: タイプ 'HttpServer' は API ではありません」というプロンプトが表示される。
-
Spring Boot による HTTPS アクセスの設定
-
をインスタンス化することができません。
-
javaの模造品QQ WeChatのチャットルーム
-
Javaエラーメッセージがenclosingクラスでない
-
javax.net.ssl.SSLException: 読み取りエラー: ssl=0xdeae5100: システムコール中の I/O エラー、接続 res
-
テストが見つかりませんでした
-
maven プラグイン エラー プラグインの実行は、ライフサイクル構成ソリューションの対象外です。