help, Tomcat + Mysql连接池问题
我装的 Tomcat5.5
在server.xml中增加:
<Context path="test" debug="5" reloadable="true" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_DBTest_log." suffix=".txt" timestamp="true"/>
<Resource name="jdbc/mysqlDB" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/mysqlDB">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>50</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>20</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>500</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value>root</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:mysql://localhost/iPortal?useUnicode=true&characterEncoding=UTF8</value>
</parameter>
</ResourceParams>
</Context>
然后有编写JSP测试:
try {
InitialContext initCtx = new InitialContext();
if (initCtx == null) {
throw new Exception("Initial Failed!");
}
Context ctx = (Context) initCtx.lookup("java:comp/env");
DataSource ds = (DataSource) ctx.lookup("jdbc/mysqlDB");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from rx_pub_tableid");
while(rs.next()){
out.println("<br>");
out.println("name=" + rs.getString("name"));
out.println("<br>");
out.println("value=" + rs.getString("value"));
}
stmt.close();
conn.close();
}catch(Exception ex){
out.println("Error");
ex.printStackTrace();
}
执行到这句:DataSource ds = (DataSource) ctx.lookup("jdbc/mysqlDB");
时抛出异常,但是是什么异常不知道。