martedì 18 agosto 2009

JPA con database multipli

Mi sono fatto una domanda: supponiamo di avere MOLTI dati da trattare, suddivisi in più di un database. Come si può fare con JPA?
Infatti JPA, di default, punta ad un solo database.
l'EntityManager, cioè il gestore delle Entity, si ottiene attraverso EntityManagerFactory. Ora, usualmente si invoca il metodo EntityManagerFactory.createEntityManager(), senza parametri nè altro, e quindi si ottiene l'EntityManager predefinito.
Si può però usare anche il metodo EntityManagerFactory.createEntityManager(Map map) dove nella map sono specificate le proprietà con cui si vuol creare l'EntityManager.

Viene fatto con Hibernate, ma il concetto è lo stesso.
Questo mi permette di ottenere il risultato voluto, e di implementare una logica custom per la scelta del database.

Nessun commento:

Posta un commento