Tomcat下JNDI的两种配置及区别

本文深入探讨了在Tomcat中使用JNDI方式配置数据源、队列工厂的两种常见方法,并详细解释了它们之间的区别,包括配置文件位置、启动时资源加载行为及类库依赖。

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

Tomcat里以JNDI的方式配置数据源、队列工厂,常用的两种方式配置方式及区别:

1.在context.xml里:
<!--连接工厂定义-->
<Resource name ="jms/queueConnectionFactory" auth= "Container"
          type= "com.ibm.mq.jms.MQConnectionFactory" 
          factory="com.ibm.mq.jms.MQConnectionFactoryFactory"
          description= "JMS Queue Connection Factory for sending messages"     
          HOST="192.168.157.94"
          PORT= "1414" CHAN ="STORE.CONN" TRAN="1" CCSID= "437" 
          QMGR ="B2CEventQueueMgr" />
<!--队列定义-->
<Resource name ="jms/requestMDPQueue" auth= "Container" 
          type ="com.ibm.mq.jms.MQQueue"
          factory= "com.ibm.mq.jms.MQQueueFactory" 
          description="JMS Queue for receiving messages from Dialog"
          QU= "imgtest_request" CCSID ="437" />
<Resource name ="jms/responseMDPQueue" auth= "Container"
          type= "com.ibm.mq.jms.MQQueue" 
          factory="com.ibm.mq.jms.MQQueueFactory"
          description= "JMS Queue for receiving messages from Dialog" 
          QU="imgtest_response"
           CCSID= "437" />
<!-- 数据源配置 -->
<Resource name ="jdbc/uimgDS" auth="Container" 
          type= "javax.sql.DataSource" maxActive ="20" maxIdle="10"
          maxWait= "1000" username ="uimg" password="GCtw5llG" 
          driverClassName="com.ibm.db2.jcc.DB2Driver"
          url= "jdbc:db2://192.168.157.114:60016/uimgdb:currentSchema=UIMG;"/>
2.在server.xml里:
<!-- 数据源配置 -->
<Resource name ="jdbc/uimgDS" auth="Container" 
          type= "javax.sql.DataSource" maxActive ="20" maxIdle="10"
          maxWait= "1000" username ="uimg" password="GCtw5llG" 
          driverClassName="com.ibm.db2.jcc.DB2Driver"
          url= "jdbc:db2://192.168.157.114:60016/uimgdb:currentSchema=UIMG;"/>
这里还要在context.xml中添加资源链接:
<ResourceLink name ="jdbc/uimgDS" global ="jdbc/uimgDS"type= "javax.sql.DataSource"/>

区别:
按第一种方式在context.xml中添加,这时启动server的时候,是不加载这些资源的,只有在应用第一次访问的时候才会去加载,指定的类的jar包可以放在tomcat的lib目录下,也可以放在classpath里面,都可以找到,如果缺少,则会抛出异常。
按第二种方式在server.xml中添加,
这种方式的配置,会在启动server的时候加载资源,指定的类的jar包必须放在tomcat的lib目录下,如果找不到,则会抛出异常。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值