在工程目录下有一个数据库连接池的类ConnectionPool,文件名为:ConnectionPool.java在JSP中我想引入数据库连接池。开发环境是:Myeclipse + Tomcat.相关代码为:<body> 
   <h2>查询结果:</h2>
   <%!String sql="select username,password from sa.user";%>
   <%
ConnectionPool pool =new ConnectionPool(
"oracle.jdbc.driver.OracleDriver",
"jdbc:oracle:thin:@100.200.100.1:1521:ORACLEDB",
"sa",
"sa"
);
pool.createPool();
Connection con =pool.getConnection();
   PreparedStatement stmt =con.prepareStatement(sql);
   ResultSet rs =stmt.executeQuery();
   ResultSetMetaData rsData =rs.getMetaData();
   out.println("<table border='1'>");
   while(rs.next()){
   out.println("<tr><th>"+rsData.getColumnLabel(0)+"</th></tr>");
   out.println("<tr><th>"+rsData.getColumnLabel(1)+"</th></tr>");
   }
   out.println("</table>");
   con.close();
   pool.closeConnectionPool();
   %>
  </body>报错信息有:
org.apache.jasper.JasperException: An exception occurred processing JSP page /DisplyDBInformation.jsp at line 2320:  "nmsdb",
21:  "nmsdb"
22:  );
23:  pool.createPool();
24:  Connection con =pool.getConnection();
25:    PreparedStatement stmt =con.prepareStatement(sql);
26:    ResultSet rs =stmt.executeQuery();
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause javax.servlet.ServletException: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
org.apache.jsp.DisplyDBInformation_jsp._jspService(DisplyDBInformation_jsp.java:106)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:169)
com.bird.beans.ConnectionPool.createPool(ConnectionPool.java:206)
org.apache.jsp.DisplyDBInformation_jsp._jspService(DisplyDBInformation_jsp.java:84)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

解决方案 »

  1.   

    驱动包要复制到 tomcat 的lib 下
      

  2.   

    要把ConnectionPool.java所在的那个包导进来
    在前面加<%import ....%>
      

  3.   

    果然是高手呀,我发现把ORACLE的驱动包放到Tomcat的lib目录下,在Myeclipse里也没有添加,直接运行就OK了,跟Java运用程序不一样呀。这是何道理呀?
      

  4.   


    我的问题是这样的:我把驱动包只放到Tomcat的lib下,没有在Myeclipse没有配制build path就可以跑起来?这是何道理?