Tomcat里以JNDI的方式配置数据源、队列工厂,常用的两种方式配置方式及区别:
1.在context.xml里:
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中添加资源链接:
<ResourceLink name ="jdbc/uimgDS" global ="jdbc/uimgDS"type= "javax.sql.DataSource"/>
区别:
按第一种方式在context.xml中添加,这时启动server的时候,是不加载这些资源的,只有在应用第一次访问的时候才会去加载,指定的类的jar包可以放在tomcat的lib目录下,也可以放在classpath里面,都可以找到,如果缺少,则会抛出异常。
按第二种方式在server.xml中添加,这种方式的配置,会在启动server的时候加载资源,指定的类的jar包必须放在tomcat的lib目录下,如果找不到,则会抛出异常。
按第一种方式在context.xml中添加,这时启动server的时候,是不加载这些资源的,只有在应用第一次访问的时候才会去加载,指定的类的jar包可以放在tomcat的lib目录下,也可以放在classpath里面,都可以找到,如果缺少,则会抛出异常。
按第二种方式在server.xml中添加,这种方式的配置,会在启动server的时候加载资源,指定的类的jar包必须放在tomcat的lib目录下,如果找不到,则会抛出异常。