This repository has been archived by the owner on Aug 31, 2019. It is now read-only.
forked from google/guice
-
Notifications
You must be signed in to change notification settings - Fork 1
GuicePersistMultiModules
sameb edited this page Jul 7, 2014
·
1 revision
Multiple persistence providers with Guice Persist
So far we've seen how to use Guice Persist and JPA with a single persistence unit. This typically maps to one data store. Guice Persist supports using multiple persistence modules using the private modules
API.
This means that you must be careful to install all JPA modules only in individual private modules:
Module one = new PrivateModule() {
protected void configure() {
install(new JpaModule("persistenceUnitOne"));
// other services...
}
};
Module two = new PrivateModule() {
protected void configure() {
install(new JpaModule("persistenceUnitTwo"));
// other services...
}
};
Guice.createInjector(one, two);
The injector now contains two parallel sets of bindings which are isolated from each other. When you bind services in module one
those services will get the EntityManager
from persistenceUnitOne
and transactions around its database.
Similarly services in module two
will have their own transactions, EntityManager
s etc., and these should typically not cross.
- User's Guide
- Best Practices
- Frequently Asked Questions
- Integration
- Extensions
- Internals
- Releases
- Community