この目的のために、persistence.xmlファイル内の異なるデータベースを指す2つの永続性ユニットを構成します。
<persistence>
<persistence-unit name="oracleDB">
<jta-data-source>java:/OracleDB</jta-data-source>
...
</persistence-unit>
<persistence-unit name="ingresDB">
<jta-data-source>java:/ingresDB</jta-data-source>
...
</persistence-unit>
</persistence>
永続コンテキストは、指定された永続ユニットのコンテナによるアノテーションを使用して挿入されます。
@PersistenceContext(unitName="oracleDB")
private EntityManager oracleEntityManager;
@PersistenceContext(unitName="ingresDB")
private EntityManager ingresEntityManager;
次に、それぞれのentityManagerインスタンスを使用してデータベースで操作を実行できます。
テーブル名/構造は両方のデータベースで同じである必要があり、移植性のためにベンダーが提供するネイティブ機能を使用しないでください。