web-dev-qa-db-ja.com

EntityManager Beanの@Autowiredと@PersistenceContext

違いは何ですか:

@Autowired
private EntityManager em;

対:

@PersistenceContext
private EntityManager em;

どちらのオプションもアプリケーションで機能しますが、@Autowiredアノテーション?

40
Cosmin Vasii

@PersistenceContextを使用して、使用する永続性ユニットを指定できます。プロジェクトには、異なるDBに接続された複数のデータソースがあり、@PersistenceContextは、操作したいものを言うことができます

ここの説明を確認してください: http://www.coderanch.com/t/481448/Java-EJB-SCBCD/certification/unitName-PersistenceContext

23
sashok_bg

@PersistenceContextは、 [〜#〜] jpa [〜#〜] その特定の目的のために設計された標準注釈です。一方、@Autowiredは、Springでの依存性注入に使用されます。 @PersistenceContextを使用すると、オプション要素を指定できるため、コンテキストをより細かく制御できます。名前、プロパティ

12
Alex

@ PersistenceContext

しないエンティティマネージャーインスタンスを返す

返すアプリケーションコードに代わってプレゼンスコンテキストを取得および解放するコンテナ管理プロキシ

11
MagGGG