2

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

基本上,我们希望每个不同的学校都有不同的数据库。每所学校的数据库都会很大,因此我们决定为每所学校单独设置数据库,但 Java 代码库要相同。因此,我们不希望在 tomcat 上部署 Web 应用程序的多个实例,但单个应用程序应该能够根据登录的人连接到各种数据库。

如何做到这一点?

4

1 回答 1

0

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

否则,我将创建多个数据源(当然使用池)并拥有多个休眠会话工厂(或实体管理器,具体取决于您的休眠版本)。

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

于 2012-09-20T08:50:43.987 回答