För detta ändamål, konfigurera två persistensenheter som pekar på olika databaser i filen persistence.xml.
<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>
Persistenskontext injiceras med hjälp av annotering av behållaren för den givna persistensenheten.
@PersistenceContext(unitName="oracleDB")
private EntityManager oracleEntityManager;
@PersistenceContext(unitName="ingresDB")
private EntityManager ingresEntityManager;
Sedan kan du utföra operationer på databaser genom att använda respektive entityManager-instans.
Tabellnamn/struktur måste vara samma i båda databaserna och undvika att använda inbyggd funktionalitet som tillhandahålls av leverantörer för portabilitet.