반응형

커넥션 풀

  온라인 쇼핑몰의 경우 동시에 수십에서 수백명까지 접속해서 조회, 주문등 다양한 기능을 사용하는데 앞의 방법처럼 데이터 베이스와 연동해 작업해야 한다면 너무 비효율적입니다.

 

이 문제를 해결하기 위해 현재는 웹 어플리케이션이 실행됨과 동시에 연동할 데이터베이스와의 연결을 미리 설정해둡니다.

  이렇게 미리 데이터베이스와 연결시킨 상태를 유지하는 기술을 커넥션 풀 (ConnectionPool)이라고 부릅니다.

 

JNDI

  실제 웹 어플리케이션에서 ConnectionPool 객체를 구현할 때는 Java SE에서 제공하는 javax.sql.DataSource 클래스를 이용합니다.

그리고 웹 어플리케이션 실행 시 톰캣이 만들어 놓은 ConnectionPool 객체에 접근할 때는 JNDI를 이용합니다.

  JNDI란 필요한 자원을 키/값 쌍으로 저장한 후 필요할 때 키를 이용해 값을 얻는 방법입니다.

 

아래와 같이 Servers에 들어가서 context.xml을 찾고 우측과 같이 코딩을 합니다

username과 password 는 본인이 아이디와 비밀번호를 넣어주시면 됩니다.

 

이제 설정을 마쳤으니 클래스를 만들어 연동해 보겠습니다.

sec02.ex01 패키지를 만들고 앞에서 사용한 MemberDAO, MemberServlet, MemberVO 클래스를 복사하겠습니다.

MemberDAO클래스에서 서블릿 매핑 이름을 /member2 로 바꿔줍니다.

 

아래의 import는 코딩하시면서 해주셔야 합니다. 단축키(ctrl+ shift +o)

아래에 주석처리된 부분은 저희가 커넥션 풀을 이용하였기 때문에 주석처리를 해줍니다.

 

앞에서 한 것과 결과는 같지만 이번에는 커넥션 풀을 이용해서 데이터베이스와 연동했다는 점에서 차이가 있습니다.

 

반응형
블로그 이미지

꽃꽂이하는개발자

,