この目的のために、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 インスタンスを使用して、データベースで操作を実行できます。
テーブル名/構造は両方のデータベースで同じでなければならず、移植性のためにベンダーが提供するネイティブ機能を使用しないでください。