Mam aplikacji przy użyciu servlets Java/JSP. Z mojej aplikacji korzysta wielu klientów, jednak każdy klient ma oddzielną bazę danych. Wszystkie bazy danych mają ten sam schemat. Chciałbym określić, które połączenie z bazą danych ma być używane w czasie, gdy użytkownik loguje się do systemu.Jak połączyć się z wieloma bazami danych przy użyciu WZP?
Na przykład, klient loguje się, ustalam, że klient A należy do bazy danych C, przechwytuje połączenie dla bazy danych C i kontynuuje moją wesołą drogę.
Używam JPA z Hibernate jako mój dostawca JPA. Czy można to zrobić za pomocą wielu jednostek trwałości i określając, która jednostka ma być używana w czasie logowania? Czy jest lepszy/preferowany sposób to zrobić?
Edytowane w celu dodania: Używam adnotacji i EJB, więc Kontekst trwałości jest ustawiany w EJB z @PersistenceContext (unitName = "blahblah"), czy można to ustalić przy logowaniu? Czy mogę zmienić unitName w czasie wykonywania?
Dzięki
Kto powiedział, że OP wykorzystuje Spring? :) –
Zrobiłem tę sugestię przed edytowaniem pytania. – Roman
Aby być uczciwym, nigdy nie wspominałem o Spring w oryginalnym poście, edycja po prostu dodała więcej informacji, ale to doprowadziło mnie do odpowiedzi, która wydaje się, że będzie to praca, więc została przyjęta. – kgrad