2014-12-19 2 views
2

유효성 검사 쿼리 대신 JDBC4 Connection.isValid을 사용하여 tomcat 7 jdbc 풀을 사용하여 jdbc 연결의 유효성을 검사하고 싶습니다.tomcat 7 jdbc 연결 풀 및 jdbc4 유효성 확인

Validator과 같이 구현하면 충분할지 궁금합니다. 또한 나는 좋은 타임 아웃이 궁금합니다.

미리 감사드립니다. Fede

추 신 : 오라클 11g을 사용하고 있습니다.

public class MyValidator implements Validator{ 
    public static final int DEFAULT_TIMEOUT = 5; 

    public boolean validate(final Connection c, final int validateAction){ 
     try{ 
     return c.isValid(DEFAULT_TIMEOUT); 
     }catch(Exception e){ 
     // LOG e 
     return false; 
     } 
} 
+0

https://bz.apache.org/bugzilla/show_bug.cgi?id=48817 이것이 구현되었는지 아닌지는 알 수 없지만 확실하게이 질문을하는 첫 번째 사람은 아닙니다. – peterh

답변

0

디버거는 상황을 해결하는 데 도움이 될 것입니다 : 톰캣/DBCP 연결 풀은 원시 연결하지만 기본 "true"로 연결을 재활용 래퍼/어댑터를 반환하지 않습니다. 일반적으로 풀은 연결을 자체적으로 확인합니다 (필요한 경우 다시 연결). 그러면 실제로 유효성을 검사 할 수 없습니다.

풀 확인 매개 변수에 대한 자세한 내용은 Tomcat doc에 있습니다. Another exchange JBoss 풀에 오라클 연결을 래핑하는 방법에 대해 설명합니다. 일반적인 관행은 무엇입니까?

관련 문제