Hibernate pobiera wszystkie połączenia JDBC z fabryki połączeń, a ustawienia tej fabryki połączeń określają schemat bazy danych, na podstawie którego są wysyłane wszystkie zapytania/aktualizacje Hibernate. Możesz skonfigurować swoją aplikację z wieloma SessionFactory
instancje, każda z fabryką połączeń wskazującą na inny schemat bazy danych. Następnie w czasie wykonywania możesz wybrać jedną z odpowiednich SessionFactory
do pracy.
Prostszym rozwiązaniem byłoby uruchomienie wielu kopii aplikacji internetowej, po jednej dla każdego klienta.