Aktivieren von multi-tenancy in Hibernate 4 mit JPA?
Sieht es für mich aus, als ob Unterstützung für multi tenancy wurde Hinzugefügt, um Winterschlaf zu halten für fast sechs Monate jetzt, und mindestens ein mal aktualisiert, da.
Sieht es ziemlich trivial, erhalten Sie eine multi-tenant-Sitzung außerhalb von JPA:
Session session = sessionFactory.withOptions().tenantIdentifier( "jboss" ).openSession();
Aber wie aktivieren Sie es in einer Anwendung verwendet, hibernate via JPA? (Wenn möglich).
Vielen Dank im Voraus.
- deine beiden links funktionieren nicht. es wird großartig sein, wenn Sie fügen Sie Sie zurück?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie es konfigurieren, über die Eigenschaften in persistence.xml wie folgt:
Wenn Sie SCHEMA als multi-Tenant-Strategie
hibernate.multi_tenant_connection_provider
ist nicht erforderlich.Können Sie auch festlegen dieser Eigenschaften im code und geben Sie Sie in eine Karte zu
Persistence.createEntityManagerFactory()
. In diesem Fall übergeben Sie ein Objekt, Instanz, nicht nur der name einer Klasse.Mehr info in Hibernate Dokumentation.
EntityManager.getDelegate() zurück liegenden
SessionImpl
.SessionImpl tmpsession = (SessionImpl) entityManager.getDelegate(); SessionFactory sessionFactory = tmpsession.getSessionFactory(); Session session = sessionFactory.withOptions().tenantIdentifier( "jboss" ).openSession();