yeyedeyatou 2013-04-09
标题:给每一个web项目配置数据可连接池
一、Tomcat6.0 连接池的配置
1、Tomcat 6的配置和以前的不同了,不推荐在server.xml中进行配置,而是在%Tomcat_Home%\webapps\szwsjj_web\META- INF \context.xml中进行配置才是更好的方法。而不是以前版本%Tomcat_Home%\conf下的context.xml文件。这样就可以在 不同的web应用下单独配置连接池了,且Tomcat会自动重载。当然你也可以更改%Tomcat_Home%\conf下的context.xml文 件,将所有web应用下的连接池进行统一配置。
说明:这样就是说在每个项目的 “META-INF”文件夹下建一个context.xml文件,然后将连接池配置在文件里
1、%Tomcat_Home% 指tomcate文件存放路径
2、szwsjj_web是项目名
二、META-INF 文件夹下的context.xml文件配置
<?xml version='1.0' encoding='utf-8'?> <Context reloadable="true"> <WatchedResource>WEB-INF/web.xml</WatchedResource> <Resource name="jdbc/oracleds" auth="Container" type="javax.sql.DataSource" maxActive="1000" maxIdle="30" maxWait="10000" username="text" password="text" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@localhost:1521:min"/> </Context>
说明:
1、name 为当前数据源JNDI的名字,可以随意设定;
2、auth 为验证方式;
3、type 资源类型;
4、driverClassName 为Oracle驱动引用;
5、maxActiv 为连接池最大激活的连接数,设为0表示无限制;
6、maxIdle 为连接池最大空闲的连接数,数据库连接的最大空闲时间。超过空闲时间, 数据库连接将被标记为不可用,然后被释放。设为0表示无限制;
7、maxWait 为连接最大的等待时间,单位毫秒,如果超过此时间将接到异常。设为-1表示无限制。;
8、username 为oracle数据库的一个用户名;
9、password 为username的密码;
10、url 为连接oracle的连接地址;
三、web.xml文件配置
<resource-ref> <res-ref-name>jdbc/oracleds</res-ref-name> <res-type>javax.sql.DataSource</res-type> </resource-ref>说名:
1、jdbc/oracleds 为context.xml文件配置中的name
2、在web.xml文件中的web-app节点下加入
四、在java文件中得到数据库连接
public static Connection fanHuiLianJie() { Connection con = null; try { //查找tomcate中Resource接口 Context ctx = new InitialContext(); //测试连接,java:comp/env是固定的,jdbc/oracleds是context.xml里的name配置文件的名字 DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/oracleds"); //得到连接 con = ds.getConnection(); } catch (Exception e) { e.printStackTrace(); System.out.println(e.getMessage()); } return con; }说名: