How to manage many schemas on one database using hibernate-Collection of common programming errors
Hibernate gets all JDBC connections from a connection factory, and this connection factory settings determine the DB schema against which all Hibernate queries/updates are issued. You can configure your application with multiple SessionFactory instances, each with a connection factory pointing to a different database schema. Then at runtime, you can pick one the appropriate SessionFactory to work with.
A simpler solution would be to run multiple copies of your web application, one for each client.