请记住,每个webapp都有自己独立的数据库(但所有数据库都在同一个数据库服务器中)。
场景是我有一个多租户saas应用程序 - 我为每个客户部署相同的应用程序。每个客户都在一个名为db_cid
的数据库上工作,其中cid
是客户ID,即唯一的客户标识符。
使用hibernate。
答案 0 :(得分:4)
如果您需要在Web应用程序之间共享资源,您必须让Web容器管理它们,并将它们放在JNDI中。然后,Web应用程序可以非常轻松地从JNDI上下文中获取资源。
JDBC连接池非常典型,因此每个Web容器都记录了如何设置它们。
对于独立程序,我们使用Simple JNDI http://www.osjava.org/simple-jndi/,它提供外部配置,允许我们完全将代码库与配置分开。
尝试一下,你会喜欢它。)
答案 1 :(得分:0)
您是否考虑过在tomcat(全局)上下文中配置JNDI连接?它可以是池化连接,如JNDI datasource example中所述。