环境:Myeclipse6.0+oracle10g+Tomcat6.0.24
在Tomcat中配置连接池要修改Context.xml和web.xml二个文件
1.将oracle6.jar复制到Tomcat安装目录的lib文件夹下(先前没做这步报找不到oracle的驱动程序类oracle.jdbc.driver.OracleDriver)
2.修改Context.xml文件
3.在web.xml中加入<resource-ref>元素
4.在web应用中加以引用
-----------------------------2---------------------------------------------
找到Tomcat安装目录下的conf文件夹下Context.xml修改如下所示:
<!--reloadable=true设置修改时自动加载更新-->
<Context reloadable="true">
<!--也对web-inf下的web.xml进行监听-->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<!--Resource元素用来定义JNDI资源-->
<Resource name="jdbc/oracleDB" auth="Container"
type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521:JZBR"
username="scott" password="tiger" maxActive="20" maxIdle="10"
maxWait="-1"/>
</Context>
name:指定Resource的JNDI名字
auth:指定管理Resource的Manager,它有二个可选值Container和Application;Container表示由容器来创建和管理Resouce,而Application表示由Web应用来创建和管理Resource
type:指定Resource所属的java类名
driverClassName:对应连接数据的JDBC驱动Driver实现类的名
url:对应连接数据库的的URL
username:数据库用户名
password:数据库密码
maxActive:数据库中连接池中处于活动的数据库连接最大数目0表示不受限制
maxIdle:空闲状态的最大数目0表示不受限制
maxWait:表示数据库中连接池中处于空闲状态的最长时间(毫秒)超过这个时间将抛出异常取值-1表示无限等待
---------------------------------------3-----------------------------------
<web-app>
<resource-ref>
<description>DB Connection</discription>
<res-ref-name>jdbc/orcaleDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
description:对所引用的资源的说明
res-ref-name:指定所引用JNDI的名字必须与Context.xml中配置的Resource中的name对应
res-type:指定所引用资源类的名字,与Resource中配置的type相同
res-auth:指定管理引用资源的Manager与Resource中配置的auth相同
----------------------------4----------------------------------------------
import javax.naming.*;
//创建一个Context接口的实例
Context ctx = new InitiaalContext();
//利用lookup(String name)方法返回与指定名字绑定的对象
//所有项目配置的JNDI都放在java:comp/env的命名空间下
DataSource ds =(DataSource)ctx.lookup("java:comp/env/jdbc/orcaleDB");
Connection conn = ds.getConnection();//得到数据库连接
快速开发可直接从Tomcat 6.0\webapps\docs\jndi-datasource-examples-howto.html
帮助文档中直接复制对应配置信息即可