如何解决数据库连接问题?

时间:2017-04-09 11:09:53

标签: java oracle jsp

我有一个关于数据库的问题( Oracle 10g )。我在JSP Servlet中开发了Web应用程序。现在我正在对它进行测试。首先,我面临一个问题(即" ORA-01000:超出最大开放游标" )。为解决问题,我关闭了建立数据库连接的每个文件(例如:Foo.java和Foo.jsp)中的每个连接。为此,我使用了以下代码:

finally {
    if(rs1 != null) {
        try {
            rs1.close();
        } catch (SQLException e) { /* ignored */ }
        if(ps2 != null) {
            try {
                ps2.close();
            } catch (SQLException e) { /* ignored */ }
        }
        if(con != null) {
            try {
                con.close();
            } catch (SQLException e) { /* ignored */ }
        }
    }

但现在代码又出现了另一个问题:应用程序无法从数据库中获取任何记录。

当我第一次点击链接时(添加菜单,然后显示所有数据,但当我点击另一个链接时,所有记录都消失了。

image 1:

然后就这样。

image 2:

并显示错误java.sql.SQLException: Closed Connection

1 个答案:

答案 0 :(得分:0)

可能是您已经在方法外定义了连接对象,第一次使用它连接到数据库的连接对象,当您再次单击链接时,将调用相同的方法并且连接对象已经关闭在最后,因此无法再次连接到数据库导致关闭连接异常。

首先是在方法内部创建连接或预处理语句或语句并获取结果集。再次调用该方法时,在连接池的帮助下再次创建连接对象,因此可以成功连接到数据库