2012-05-08 43 views
3

私はJava EEでデータベース駆動型のWebアプリケーションを開発しています.JEBSを使用する利点については疑問に思っています。WebアプリケーションでEJBを使用する利点は何ですか?

正しく理解すれば、あらゆる種類のビジネスロジックやデータベーストランザクションにEJBを使用することをお勧めします。私はここに私のJPAようにHibernateを使用しています

は私の質問です:

私のマネージドBeanから呼び出さDAOとして、通常のJavaクラスの代わりにDAOとして注入されたEJBを使用するメリットは何ですか?違いは何ですか?

私はJava EEの初心者です。初心者の方の質問になるかもしれません。

答えて

5

EJBを使用する場合は、EJBコンテナによって提供される非常に重要なサービスをいくつか使用できます。かなりの人にとって有益な最も重要なものは、依存性注入と宣言的なトランザクションです。どちらもSpringのフレームワークによって提供されます。非常に大きなアプリケーションの場合、EJBがクラスタリングのための明確なモデルを持っていることは有益ですが、おそらくそれは必要ありません。

+0

小規模なアプリケーションでビジネスロジックに通常のクラスを使用するだけの "ok"ですか? – tk2000

+4

@ tk2000:トランザクションが必要な場合でも、手動で行うのは退屈でエラーが発生しやすいです。すでにJava EEサーバーを使用しており、EJBコンテナを利用できる場合は、EJBを使用する価値があります。近代的なEJBは非常に使いやすく、いくつかのアノテーションが必要なだけで、デプロイメント記述子とJNDIルックアップをもう処理する必要がないので、それらを恐れる必要はありません。この答えは –

+0

+1です。 JPAでのトランザクションの手動処理は苦痛です。 EJBはほぼ通常のクラスです。その上に@Statelessを置き、新しいもので作成するのではなく注入します。 90%のケースでこれはあなたが知る必要があるすべてです。 –

関連する問題