通过单个struts-hibernate应用程序连接到多个数据库

通过单个struts-hibernate应用程序连接到多个数据库,hibernate,struts,multiple-databases,single-instance,Hibernate,Struts,Multiple Databases,Single Instance,我们有一个在tomcat上运行的struts hibernate mysql应用程序。我们希望应用程序具有相同的代码库,但希望应用程序根据登录到系统的用户动态连接到不同的数据库 基本上,我们希望每个不同的学校有不同的数据库。每个学校的数据库都会很大,因此我们决定将每个学校的数据库分开,但Java代码库是相同的。因此,我们不希望在tomcat上部署多个Web应用程序实例,但单个应用程序应该能够连接到不同的数据库,具体取决于登录者 如何实现这一点?设计更好的领域模型将是最好的方法 否则,我当然会使用

我们有一个在tomcat上运行的struts hibernate mysql应用程序。我们希望应用程序具有相同的代码库,但希望应用程序根据登录到系统的用户动态连接到不同的数据库

基本上,我们希望每个不同的学校有不同的数据库。每个学校的数据库都会很大,因此我们决定将每个学校的数据库分开,但Java代码库是相同的。因此,我们不希望在tomcat上部署多个Web应用程序实例,但单个应用程序应该能够连接到不同的数据库,具体取决于登录者


如何实现这一点?

设计更好的领域模型将是最好的方法

否则,我当然会使用池创建多个数据源,并根据您的hibernate版本拥有多个hibernate会话工厂或实体管理器


您可以保留一个映射到其会话工厂的学校密钥的映射。当您执行代码时,请为学校找到正确的工厂。

设计更好的域模型将是最佳方法

否则,我当然会使用池创建多个数据源,并根据您的hibernate版本拥有多个hibernate会话工厂或实体管理器


您可以保留一个映射到其会话工厂的学校密钥的映射。当您执行代码时,请为学校获取正确的工厂。

如果我们使用c3p0,上述方法是否仍然适用。非常感谢。我会检查一下,如果我有问题的话,再回来查询。再次非常感谢。关于这方面的一些消息?如果我们使用c3p0,上述方法是否仍然适用。非常感谢。我会检查一下,如果我有问题的话,再回来查询。再次谢谢。有什么消息吗?