2017-04-09 1 views
0

데이터베이스 (Oracle 10g)와 관련된 한 가지 문제점이 있습니다. JSP Servlet에서 웹 응용 프로그램을 개발했습니다. 지금 나는 그것을 수행하고있다. 먼저 문제가 발생했습니다 (예 : "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

+0

열 머리글에서''s '을 (를) 제거하십시오. 그것은 단지 나쁜 문법입니다. –

답변

0

5 월 y o 연결 객체를 사용하여 처음으로 연결 객체를 데이터베이스에 연결하고 연결을 다시 클릭하면 동일한 메소드가 호출되고 연결 객체가 이미 닫혀 있으므로 데이터베이스에 다시 연결하지 않아 닫힌 연결 예외가 발생합니다.

먼저 연결 또는 준비된 문 또는 문을 메서드 내부에 만들고 결과 집합을 가져옵니다. 다시 메서드를 호출하면 연결 개체가 연결 풀의 도움으로 다시 만들어 지므로 데이터에 성공적으로 연결할 수 있습니다. 베이스.

+0

고맙습니다 .... 나는 문제를 일으키는 곳을 설립했다. 사실 문제는 MyConnection.java 내부입니다. 정적 인 메소드가 생성되었습니다.하지만 이제는 정적 메소드 인 public connection connectMe()과 그 작업을 제거했습니다. –

관련 문제