建立下面的javabean,调用连接池:package dbbean;import dbbean.DBConnectionManager;
import java.sql.*;public class ConnectionInstance{
    //所有对象共享一个连接池管理器
    public DBConnectionManager connMgr;    private Connection conn=null;
   
    //构造函数,每创建一个对象,取得一个连接
    public ConnectionInstance(){
        connMgr = DBConnectionManager.getInstance();
        this.conn = connMgr.getConnection("idb");
        if (conn == null) {
          System.out.println("不能获取数据库连接.");
       }
    }
    
    //返回该连接
    public Connection getConn(){
        
       connMgr = DBConnectionManager.getInstance();
       this.conn = connMgr.getConnection("idb");
       return this.conn;
    }     
    
    //返回连接回连接池
    public void releaseConn(){
connMgr.freeConnection("idb", this.conn);
    }
    
}然后再jsp中调用javabean,返回的Connection为null

解决方案 »

  1.   

    帖你的JSP代码
    包括使用连接的。
      

  2.   

    <%@ page contentType="text/html; charset=gb2312" %>
    <%@ page import="java.sql.*"%>
    <%!
       Connection conn=null;
    %>   
    <jsp:useBean id="connIns" class="dbbean.ConnectionInstance" scope="page"/>
    <%
      conn=connIns.getConn();
    if (conn==null)
    {
       out.print("不能建立连接");
     }
     
    %>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>无标题文档</title>
    </head><body>
    </body>
    </html>
    总是显示不能建立连接,conn为null
      

  3.   

    建立下面的javabean,调用连接池:package dbbean;import dbbean.DBConnectionManager;
    import java.sql.*;public class ConnectionInstance{
        //所有对象共享一个连接池管理器
        public DBConnectionManager connMgr;    private Connection conn=null;
       
        //构造函数
        public ConnectionInstance(){
            connMgr = DBConnectionManager.getInstance();
         }
        
        //返回该连接
        public Connection getConn(){
           return connMgr.getConnection("idb");
        }     
        
        //返回连接回连接池
        public void releaseConn(){
    connMgr.freeConnection("idb", this.conn);
        }
        
    }
      

  4.   

    DBConnectionManager应该是个单例类你再次调用DBConnectionManager.getInstance();的时候会返回NULL的
      

  5.   

    不好意思上面改的好象没有留下句炳,没法释放你看着改改吧。明白DBConnectionManager是个单例类就能改好了
      

  6.   

    如果你找到的是原版的DBConnectionManager.java,那么它应该是从db.properties文件中读取数据库的配置信息。
    在jsp使用,这个文件应该放在WEB-INF/classes目录下面。另外你的程序没有释放连接,应该这样写:
    DBConnectionManager connMgr=DBConnectionManager.getInstance();
       Connection conn = connMgr.getConnection("idb");
      
       if (conn==null)
          System.out.print("error");
      
        
        int count = 0;
        try{
             Statement stmt = conn.createStatement();
             ResultSet rs = stmt.executeQuery("select count(*) from user_info");
             rs.next();
             count = rs.getInt(1);
             stmt.close();
           }
        catch(SQLException e){ }
        finally
        {
             connMgr.freeConnection("idb", conn);
        }
      

  7.   

    db.properties只是一个命名的问题,我在DBConnectionManager.java中加上main方法,能连接成功的,说明与命名无关,如果我在javabean中引用DBConnectionManager.java,连接总是
    为null,不只是什么原因????