wood burning stoves 2.0*
The moose likes Spring and the fly likes dynamically decide which database has to be referred Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Frameworks » Spring
Bookmark "dynamically decide which database has to be referred" Watch "dynamically decide which database has to be referred" New topic
Author

dynamically decide which database has to be referred

pavan bukka
Greenhorn

Joined: Jan 01, 2013
Posts: 21
Hi all ,
we have developed an application called document management system which has been developed using spring and hibernate , now we want give this application on trial basis to the clients. to do so what we have done is we have created separate database for each client , User while logging in will be giving his user name and password along with client id based on client id i have to refer the database .
(for example i have created two databases with the names AAA and BBB and restored these databases with our application database, while user logging if he gives client id as AAA then the database named AAA has to be refer ed for all his transactions ,if the client id is BBB then database BBB has to be referred , these databases schema and all the stored procedures will be same but data will be based on clients )

how to dynamically decide which database has to be referred in hibernate.


with regards,
bukka pavan kumar.
Sagar Rohankar
Ranch Hand

Joined: Feb 19, 2008
Posts: 2902
    
    1

If its a web app and my company got more money, then I might deployed separate instance of webapp for each client and configured the db accordingly, then it just a matter of sub-dimain pointing correct app, like http://aaa.dms.com or http://bbb.dms.com

Still for your problem, this blog may help: http://blog.springsource.org/2007/01/23/dynamic-datasource-routing/


[LEARNING bLOG] | [Freelance Web Designer] | [and "Rohan" is part of my surname]
pavan bukka
Greenhorn

Joined: Jan 01, 2013
Posts: 21
thanks for your reply

with regards,
b pavan kumar.
Jayesh A Lalwani
Bartender

Joined: Jan 17, 2008
Posts: 2277
    
  28

You don't want to have a separate webapp for each client because if your application is mostly database oriented, the load on your webapp server is going to be much lesser than the load on the database server. The cost of the webapp server, and more importantly the labor cost of maintaining the server will be a big waste

This kind of model where you want to support multiple clients in your SaaS app is called multi tenancy. There are various multi tenancy models. This whitepaper does a good job of covering the various multi tenancy models
Sagar Rohankar
Ranch Hand

Joined: Feb 19, 2008
Posts: 2902
    
    1

The cloud way its indeed a cool idea, I haven't thought of that. Thanks.

Also, deploying multiple app is bad idea as number of client grows, the cost and maintenance is real pain. I took my words back on that.
 
jQuery in Action, 2nd edition
 
subject: dynamically decide which database has to be referred
 
Similar Threads
muliple db's accessed by 1 application server
dynamicall decide which database has to be referred
Changing The database dynamically based on requested user
Arrays of strings from a Vector
Hibernate