2017-09-03 16 views
0

私は、Servlet、JSP、JPA、EJBを使用してJava EEアプリケーションを開発しています。私はすでにWebsphereコンソールにデータソース(Oracle 11g)を設定しているので、自分のコードでCMP Entity Beanを使用する必要があるかどうか、またはpersistence.xmlを持つ単純なステートレスセッションBeanを(JNDIを使ってWAS)。WAS 8.5.5 CMP/BMPとPersistence DataSource

ありがとうございます。

答えて

1

CMPエンティティBeanを使用する必要はありません。 JPAはEJBエンティティBeanの代替品であり、(WASで構成されたデータソースのJNDIを使用して)推奨される技術である必要があります。 CMP/BMPエンティティBeanはJava EEのオプション部分であり、WebSphere Libertyではサポートされていません(v9.0でもWebSphereの従来のバージョンでは引き続きサポートされています)。

また、JPA(persistence.xml)でステートレスSession Beanを使用する必要はありません。ステートレスセッションは、データベースアクセスをカプセル化してトランザクションのサポートを提供するうえで便利な方法ですが、サーブレットからJPAを直接使用することもできます。

CMPエンティティBeanとJPA(persistence.xml)の両方を同時に使用することは避けるべきです。データベースの行にアクセスしようとする(そしてロックする)2つの異なる技術に終わり、デッドロックや破損が発生してしまいます。

関連する問題