Home JBoss howto Persistence - Database How to use multiple database in persistence.xml?
30 | 07 | 2010
JBoss 5 AS Book
"JBoss AS 5 development" reviews
Please share your feedback/review with other readers!
Banner
Dashboard
Advertise with Us
Banner
RSS Feed
Java EE 1.6 resources
Login
Sign here for the NewsLetter.



JBoss admin resources
Banner
Java EE 1.6 resources
JBoss howto

How to avoid the 50 seconds start up limit in Eclipse ?

JBoss recipe of the day ...
Read More

How can you solve deployment errors caused by large war/jar/ear files ?

jboss recipe of the day ...
Read More

How do you configure your .war to be deployed after your EJB ?

jboss recipe of the day ...
Read More
How to use multiple database in persistence.xml?
Written by Mark S.   

JBoss recipe of the day

The Java Persistence API allows you to define multiple persistence units, each of which can map to a separate database. If you look at the persistence.xml file :
 

   <persistence>
    <persistence-unit name="sample-db1">
     <provider>org.hibernate.ejb.HibernatePersistence</provider>
     <jta-data-source>jdbc/SamplesDB</jta-data-source>
    </persistence-unit>
    <persistence-unit name="sample-db2">
     <provider>
      oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider
     </provider>
     <jta-data-source>jdbc/SamplesDB2</jta-data-source>
    </persistence-unit>
   </persistence>

The sample-db1 and sample-db2 persistence units are used to create and inject the appropriate entity managers into your EJB. Here is the code in the session bean that injects the entity managers with a transactional persistence context:

   @PersistenceContext(unitName="sample-db1", 
          type=PersistenceContextType.TRANSACTION)
   private EntityManager em1;
       
   @PersistenceContext(unitName="sample-db2", 
          type=PersistenceContextType.TRANSACTION)
   private EntityManager em2;

JBoss.org Search
Custom Search
Comments
Search
Only registered users can write comments!

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."