问题是在JSP当中
<jsp:useBean id="citybean" scope="page" class="emp.cityBean"/>
<jsp:useBean id="deptbean" scope="page" class="emp.deptBean"/>
执行citybean.makeConnection();后,deptbean是否不用执行deptbean.makeConnection();就可以执行引用class sqlBean中的conn呢???
我试了好像不行,一定要建两个连接,有什么方法建一个连接就行了呢?

解决方案 »

  1.   

    这当然是不行的了,你的抽象类,派生出两个类,虽然可以理解为两个同样的连接,但由于存在继承的问题,由citybean.makeConnection()所建立的连接,只能对citybean是可见的,在deptbean中是不可以用的,这样就双胞胎兄弟一样,是平等的,不能说是因为一个人从你父类中得到一个连接,另外一个人也就有同样的连接呀,
      

  2.   

    sqlBean不要自已管理接,由外面传入:
    sqlBean增加一个方法
    public void setConnection(Connection conn)
    {
       this.conn = conn;
    }在jsp中:
    <jsp:useBean id="citybean" scope="page" class="emp.cityBean"/>
    <jsp:useBean id="deptbean" scope="page" class="emp.deptBean"/><%
    ...
    Connection conn = ... //从连接池中取连接。
    citybean.setConnection(conn);
    deptbean.setConnection(conn);
    ...
    %>