https://blog.csdn.net/Jerome_s/article/details/37103171
コメントの仕方によって他のEJBを使用して、移植やサービス
EJBオブジェクトは、非常に多くの実際のプロジェクトでは、だけでなく、それぞれ他のEJBを呼び出すことができます
プロジェクトHelloWorldの下に新しいインタフェースその他 cn.hqu.ejb3の下で:
パブリック インターフェース他{
パブリック 抽象文字列sayMe();
}
新しい実装クラスOtherBean cn.hqu.ejb3で:
パブリック クラス OtherBean実装その他の{
@オーバーライド
パブリック文字列sayMe(){
返す 「その他」。
}
}
JavaBeanは、インターフェイスがデフォルトのローカルインターフェイスで、ステートレスセッションBeanになります:
@ ステートレス
パブリック クラス OtherBean実装その他の{
@オーバーライド
パブリック文字列sayMe(){
返す 「その他」。
}
}
HelloWorldBean呼び出さOtherBeanメソッドの内部。
メソッドの中に入るOtherBean:
JNDIルックアップを使用して:2つのメソッドを使用してEJBオブジェクトを取得します。依存性注入を使用しました。
JDNIで検索:
JBossへのEJBデプロイメント:Antの実行。展開。
クライアントコードの変更:EJBCLient
パブリック クラス EJBClient {
パブリック 静的 ボイドメイン(文字列[]引数){
してみてください {
InitialContextctx = 新しいのInitialContext();
HelloWorldhelloworld =(HelloWorldの)CTX
.lookup("リモートHelloWorldBean /" )。
。システムOUT .println(helloworld.sayHello(" 蘇志の注射"))。
} キャッチ(NamingExceptionの電子){
e.printStackTrace();
}
}
}
実行メイン出力:蘇志の注入は言った:こんにちは!
その他、
呼び出しが成功します。
コード:のhttp://pan.baidu.com/s/1mgjxXt2
注入を使用して依存的に:
アリ展開の実装。実行clientmain、呼び出しが成功します。
あなたが別のEJBプロジェクトは、注入法を使用することができます使用するとします。
他の@EJBその他。
しかし、EJB、このクラスを見つけると仮定すると、それは我々が注入したい1わからないため、インターフェイスが、文句を言うでしょう、2で実装されています。
解決策:レッツを注入することは、OtherBeanを使用することが可能です
@EJB(のbeanName = 「OtherBean」)その他の他、EJBを指定注射さを理解し、問題が魅力を生じないだろう。
@EJBは、例えば、と他のサービスのタイミングEJBを注入することができる@ResourceのTimerService のTimerServiceを、
注入は、データ・ソースを使用することである@Resource
@Resource(にmappedName = "" )データソースデータソース。
指定されたデータ・ソースのJNDI名にmappedName。
JBoss設定データソース
データソースオブジェクトが作成されたデータベース接続の数を減らすことができます。システムの実行性能を向上させるには。
データソースのJBossの作成します。
Fでのコンフィギュレーションテンプレートデータベース:ドキュメント\ JCA下の例は、デスクトップデータベースの変更にテンプレートをコピーし、\ \ Javaは\ jboss-4.2.2.GA \見つけます。
コンフィギュレーション・データ・ソース
<データソース>
<ローカル-TX-データソース>
<JNDI名> hquDS </ JNDI名>
<接続URL> JDBCます。mysql:// localhostを:3306 / hqutest </接続URL>
<ドライバクラス>はcom.mysql.jdbc.Driver </ドライバクラス>
<ユーザー名>ルート</ユーザー名>
<パスワード>ジェローム</パスワード>
ドライブのMySQLサーバー\デフォルト\ libににファイルをコピーし、JBossを再起動します。
構成され、出版のために、データソースJBossへリリースされる、\サーバー\デフォルトにデータソースファイルをコピーし、コンソールプロンプト発行の成功を展開します。JNDI名は、情報で見ることができます。
コンソールのhttpへのJBoss:// localhostを:私たちは、データソースをリリースしている見ることができます8080 / JMXコンソール:jboss.jca隣。
名前= hquDS下jboss.jcaでは、サービス=コンソールにクリックManagedConnectionPool最大接続数の最小構成等とは、JBoss設定がなくなって再起動します
このような接続の最小数は最大<パスワード>ジェローム</パスワード>以下を増加させるような構成を介するMySQL-ds.xmlの構成
<パスワード>ジェローム</パスワード>
<MIN-プールサイズ> 3 </分プールサイズ>
<最大プールサイズ> 100 </最大プールサイズ>