私はJavaEEを理解し始めたところです。@Stateful
クラスに注釈を追加したり、注釈を付けたり@Stateless
すると、EJBBeanになることを私は知っています。しかし、私がそれを行うと、バックグラウンドで実際に何が起こっているのでしょうか?ウィキペディアにEJBに関連して以下がリストされています。
- トランザクション処理
- Java Persistence API(JPA)によって提供される永続化サービスとの統合
- 同時実行制御
- JavaメッセージサービスとJavaEEコネクタアーキテクチャを使用したイベント
- 非同期メソッドの呼び出し
- クラスをEJBとしてマークすると、上記のアイテムはバックグラウンドで「処理」されますか?クラスをEJBにすると、上記のそれぞれを通過するまったく異なるコードパスがたどられますが、それは何が起こっているのでしょうか。
- CDIを使用すると、CDIBeanの代わりにEJBBeanを注入するオプションがあることがわかります。その場合、EJBBeanはCDIBeanよりも強力なので、常にCDIBeanの代わりにEJBBeanを使用する必要がありますか?