2011-10-05 2 views
2

init 방법으로 연결을 열고 destroy 방법으로 닫을 수 있습니까? 또한 mysql 데이터베이스에 연결하는 가장 좋은 방법은 무엇입니까? 현재 저는 이것을 사용하고 있습니다 :언제 자바 서블릿을 사용하면서 MySQL 연결을 열어 언제 닫을 수 있습니까?

Class.forName("com.mysql.jdbc.Driver"); 

Connection connect = DriverManager.getConnection("jdbc:mysql://" + ipaddress + "?user=" + user + "&password=" + pass); 

그러나 이것은 어딘가에서 비효율적이며 연결 풀을 사용해야합니다. 그렇게하는 방법?

답변

6

명시 적으로 (예 : c3p0) 또는 서블릿 컨테이너에서 제공하는 연결 풀을 사용하는 것이 좋습니다.

필요할 때 데이터베이스 연결을 연 다음 가능한 한 빨리 닫습니다. 연결 풀이 실제 네트워크 연결을 처리합니다.

이 작업을 수행하지 않으면 전체 응용 프로그램에 대해 하나의 연결로 끝납니다. 즉, 한 번에 하나의 쿼리 만 처리 할 수 ​​있으며 모든 코드는 데이터베이스 쿼리를 중심으로 동기화해야합니다. 확실히 완전히 독립적 인 여러 쿼리를 동시에 실행할 수 있습니까? 단일 연결로는이 작업을 수행 할 수 없습니다.

적합한 연결 풀을 구성한 연결을 여는 가장 좋은 방법은 결국 DriverManager.getConnection()을 사용하지만 mysql 대신 연결 풀을 직접 지정하는 것입니다.

+0

감사합니다. – ilija139

관련 문제