今天配置了下连接池,发现网上的教程都是抄来抄去,而且没找到几个对的...
看来还是要靠自己了....烦.
首先,进去 oraclehome\jdbc\lib\,找到ojdbc14.jar(不用的oracle可能不同,我的是ora92)
拷贝到:tomcathome\common\lib\
5.0:
在 tomcat5.0home\conf\Catalina\localhost 下建立xxxx.xml
<?xml version='1.0' encoding='utf-8'?> <Context crossContext="true" displayName="xxxx" docBase="xxxx" path="/xxxx" workDir="xxxx"> <Resource auth="Container" name="java/oracle" type="javax.sql.DataSource"/> <ResourceParams name="java/oracle"> <parameter> <name>validationQuery</name> <value>select * from tab</value> </parameter> <parameter> <name>maxWait</name> <value>10000</value> </parameter> <parameter> <name>maxActive</name> <value>100</value> </parameter> <parameter> <name>password</name> <value>hbinfo</value> </parameter> <parameter> <name>url</name> <value>jdbc:oracle:thin:@127.0.0.1:1521:epgdb</value> </parameter> <parameter> <name>driverClassName</name> <value>oracle.jdbc.driver.OracleDriver</value> </parameter> <parameter> <name>maxIdle</name> <value>20</value> </parameter> <parameter> <name>username</name> <value>hbinfo</value> </parameter> </ResourceParams> </Context>
这样就OK了,然后建立个jsp测试吧.
<%@ page language="java" import="javax.naming.*,javax.sql.*,java.sql.*" pageEncoding="GBK"%> <html> <head><title></title></head> <body> <% try{ String s = "测试数据库连接池:"; out.println(s); Context initContext = new InitialContext(); if (initContext == null) out.println("initContext is null"); Context envContext = (Context) initContext.lookup("java:comp/env"); if (envContext == null) out.println("envContext is null"); DataSource ds = (DataSource) envContext.lookup("java/oracle"); Connection conn = ds.getConnection(); ResultSet rs = conn.createStatement().executeQuery("SELECT * FROM charm_media"); int i=0; while(rs.next()){ i++; } out.println("number:"+i); conn.close(); }catch(Exception e){ e.printStackTrace(); } %> </body> </html>
5.5:
同5.0一样,在 tomcat5.5home\conf\Catalina\localhost 下建立xxxx.xml
这就不写了.
然后修改tomcat5.5home\conf\server.xml .在</Host>之前加入:
<Context displayName="xxxx" docBase="xxxx" path="/xxxx"> <Resource name="java/oracle" auth="Container" type="javax.sql.DataSource" driverClassName="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:epgdb" username="hbinfo" password="hbinfo" maxActive="8" maxIdle="20" maxWait="10000" /> </Context>
测试同上.