我有.war文件A和.war文件B和.war文件C; B和C需要使用数据库连接,所以我决定使用.war A来共享数据库连接。但问题是.war文件受限于他们自己的上下文。所以我的问题是如何获得数据库连接以在我的Tomcat Web应用程序之间共享它?以及如何限制几个应用程序的连接访问?
答案 0 :(得分:3)
您可能实际上并不希望跨应用共享单个连接。您可能希望共享创建连接的事物,该连接应该是连接池。将appropriate implementation DataSource放入Tomcat的JNDI注册表中。然后,所有应用都可以从同一来源检索连接。要限制对某些应用的访问权限,只需强制他们使用getConnection() method that requires a username and password,只有拥有凭据的应用才能使用它。
答案 1 :(得分:1)
在Tomcat的server.xml
中声明一个dataSource资源,并在context.xml
中引用该资源。 This涵盖了您的案例。