Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Mapowanie jednej klasy Entity do dwóch różnych baz danych (Oracle i Ingres)

W tym celu skonfiguruj dwie jednostki trwałości wskazujące na różne bazy danych w pliku 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>

Kontekst trwałości jest wstrzykiwany przy użyciu adnotacji przez kontener dla danej jednostki trwałości.

   @PersistenceContext(unitName="oracleDB")
   private EntityManager oracleEntityManager;

   @PersistenceContext(unitName="ingresDB")
   private EntityManager ingresEntityManager;

Następnie możesz wykonywać operacje na bazach danych za pomocą odpowiedniej instancji entityManager.

Nazwa/struktura tabeli musi być taka sama w obu bazach danych i unikać używania natywnych funkcji zapewnianych przez dostawców w celu przenośności.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy istnieje najlepszy sposób na uniknięcie wykonywania procesu więcej niż raz w Oracle?

  2. Kolumna zwrotu Oracle SQL obliczona z istniejących kolumn

  3. Wyodrębnij dane z typu zdefiniowanego przez użytkownika za pomocą cx_Oracle

  4. Liferay:Nie znaleziono odpowiedniego sterownika

  5. Kaskadowo usuń zapytanie