在网上看了一些连接池的配置说明结果都有问题,最后找到如下办法可以简单配置成功
在C:/Tomcat5.0/conf/server.xml中 </Host>前,加如下代码:
<Context path="/oshop" docBase ="oshop" debug="0" reloadable ="true" crossContext="true">
<Resource name = "jdbc/oshop" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name ="jdbc/oshop">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@127.0.0.1:1521:oshop</value>
</parameter>
<parameter>
<name>username</name>
<value>xidu</value>
</parameter>
<parameter>
<name>password</name>
<value>xidu</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context>
在jsp中,使用如下java代码测试
<%@ page import="javax.sql.*"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*" %>
<%
DataSource ds = null;
try {
InitialContext ctx = new InitialContext();
ds = (DataSource) ctx.lookup("java:comp/env/jdbc/oshop");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
String strSql = " select * from person";
ResultSet rs = stmt.executeQuery(strSql);
while (rs.next()) {
System.out.println(rs.getString(1));
}
} catch (Exception ex) {
ex.printStackTrace();
out.println("出错了!");
}
%>