如果我在 Tomcat 中配置了 JNDI 资源,并且在我的代码中创建了两个引用相同 JNDI 资源的 DataSource 对象,这将创建两个不同的连接池,还是 DataSource 共享相同的连接池?如果可能的话,您能否提供支持您答案的资源,我已经搜索了所有内容,但找不到任何东西。
问问题
1149 次
2 回答
2
当您说“创建两个数据源对象”时,您实际上是在创建对象还是从 JNDI 获取它们?你能发布一段代码吗?
如果您通过 JNDI 获得数据源,它将成为您可以安全使用的池化数据源,它将是同一个池。如果您实际上是在创建新对象,那么情况就不同了。
于 2012-08-16T20:58:14.790 回答
2
他们将使用相同的连接池。
您声明的是对在 tomcat 上声明的真实连接池的引用,因此在您的情况下,您有 2 个引用。
如果您想确保通过泄漏一个数据源上的连接并显示 2 个数据源的大小来进行测试。
至于参考,请查看 oracle jndi 教程和连接池的 tomcat 文档配置。
问候
菲利普·M。
于 2012-08-16T20:59:10.937 回答