tomcat JNDI配置

本文详细介绍了JNDI的基本概念及其在Tomcat中的三种配置方式:全局配置、局部配置1及局部配置2,并展示了如何结合Spring进行数据源配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

备份

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节点下增加
Conf/context.xml代码 收藏代码

<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节点加入
Java代码 收藏代码

<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
Context.xml代码 收藏代码

<ResourceLink name="jdbc/testDB" type="javax.sql.DataSource" global="jdbc/icacDb"/>  

2)局部配置1,server.xml < host> 标签内加入context节点
Java代码 收藏代码

<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文件内容如下
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创建配置

Applicationcontext.xml代码 收藏代码

<!-- 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服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值