【发布时间】:2014-06-05 21:32:06
【问题描述】:
发现几个博客提供了定义 jndi 数据源然后从 Spring Container 访问的步骤。
方法一:
1. Creating a file context.xml in src\main\webapp\META-INF folder and defining all
relevant jndi datasources.
2. Accessing jndi datasource from spring application context.xml file by using
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/MyDB"/>
</bean>
我尝试了上面的配置,这很有效。
我也找到了一些其他方法。
方法2:http://makecodeeasy.blogspot.in/2013/05/jndi-datasource-in-spring.html和Tomcat 6/7 JNDI with multiple datasources在哪里
1. Datasources are defined in server.xml file (tomcat) and refered in web.xml file.
2. Accessing jndi datasources from spring application context.xml file
using JndiObjectFactoryBean with an additional resource ref attribute.
再次。如何使用下面的行来实现上述两种方法中的第 2 步。
<jee:jndi-lookup id="dataSource" jndi-name="java:comp/env/jdbc/MyDB" />
基本上我想知道哪个是更好的服务器连接池机制。一种方法比其他方法有什么优势。哪个是先进的,为什么?
==已编辑==
一旦 spring 应用上下文通过 context.xml 中定义的 jndi 获取数据源相关信息,运行 Standalone 而非 Web Container 的 Junit 测试用例如何访问 JNDI 资源?
谁能帮我弄清楚这些。
【问题讨论】:
标签: java spring tomcat7 datasource jndi