1.jndi 概念
http://baike.baidu.com/view/209575.htm
tomcat官方文档,tomcat启动后访问http://localhost:8080/docs/jndi-resources-howto.html
个人理解,基于目录服务技术的一中实现,可以对dns,ladp等服务提供支持。
2.结合tomcat配置,3种配置方式
1)全局配置,tomcat安装目录conf文件下的context.xml增加context节点下增加
<Resource name="jdbc/testDB" auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
username="test"
password="test"
maxActive="50"
maxIdle="30"
maxWait="10000" />
或者server.xml文件 GlobalNamingResources节点加入
<Resource
name="jdbc/testDB"
auth="Container"
type="javax.sql.DataSource"
password="test"
username="test"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
maxIdle="2"
maxWait="5000"
maxActive="4"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
/>
然后再context.xml文件加入ResourceLink
<ResourceLink name="jdbc/testDB" type="javax.sql.DataSource" global="jdbc/icacDb"/>
2)局部配置1,server.xml<host>标签内加入context节点
<Context path="/test_jndi" docBase="/test_jndi">
<Resource
name="jdbc/testDb"
auth="Container"
type="javax.sql.DataSource"
password="test"
username="test"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
maxIdle="2"
maxWait="5000"
maxActive="4"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
/>
3)局部配置2,部署应用web项目的META-INF下创建context.xml文件内容如下
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
name="jdbc/testDb"
auth="Container"
type="javax.sql.DataSource"
password="test"
username="test"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@127.0.0.1:1521:orcl"
maxIdle="2"
maxWait="5000"
maxActive="4"
factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
/>
</Context>
3.结合spring ioc datasource bean创建配置
<!-- spring 支持的两种配置方式-->
<!-- 第一种 -->
<!--
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:comp/env/jdbc/testDb</value>
</property>
</bean>-->
<!-- 第二种 -->
<jee:jndi-lookup id="dataSource" jndiname="java:/comp/env/jdbc/testDb"/>
jndiName的value:comp前加/不加/都可以的。
4.服务启动完,http://localhost:8080/manager/resources可以查看发布的jndi服务。
Tomcat JNDI配置详解
本文详细介绍了JNDI的基本概念及其在Tomcat中的三种配置方式:全局配置、局部配置1和局部配置2,并展示了如何结合Spring进行数据源配置。
4509

被折叠的 条评论
为什么被折叠?



