1. Global JDBC DateSource
步骤1 :在$CATALINA_BASE/conf/server.xml中<GlobalNamingResources>下添加<Resource> 下面是一个例子:
<Resource name="jdbc/agri" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="******" password="*******" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.201.101:1521:orcl"/>
步骤2:在$CATALINA_BASE/conf/context.xml中<Context>下添加<ResourceLink>。下面是一个例子:
<ResourceLink global="jdbc/agri" name="jdbc/agri" type="javax.sql.DataSource"/>
2. Per-web-application JDBC DateSource
方案1: 在$CATALINA_BASE/conf/Catalina/${YOUR_HOST} 目录下新增${YOUR_WebApp_Name}.xml
xml文件的内容可参考如下配置:
<?xml version="1.0" encoding="UTF-8"?> <Context> <Resource name="jdbc/agri" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="***" password="****" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@192.168.201.101:1521:orcl" /> </Context>
方案2: 在$CATALINA_BASE/conf/server.xml中<Host>下添加<Context>,下面是一个例子:
<Context path="/apppath" docBase="${appname}" debug="5" reloadable="false"
crossContext="true">
<Resource name="jdbc/agri" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="****" password="****"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@192.168.201.101:1521:orcl"/>
</Context>
方案3:在你的项目下WebRoot/META-INF目录下新建context.xml,xml文件的内容靠参考方案1。
这个context.xml会自动生成方案1描述的$CATALINA_BASE/conf/Catalina/${YOUR_HOST} 目录下自动生成${YOUR_WebApp_Name}.xml(这个文件是tomcat真正用到的文件),但是修改context.xml文件并不会自动修改生成的${YOUR_WebApp_Name}.xml文件,所以这点需要注意。
以上的所有方案均可选择性的在web.xml中声明外部资源信息,配置如下所示
<resource-ref> <description>Oracle Datasource example</description> <res-ref-name>jdbc/agri</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
以上的所有配置可参考$CATALINA_BASE/docs/jndi-datasource-examples-howto.html