웹 개발 기초/자바 웹을 다루는 기술

DataSource 이용해 데이터베이스 연동하기

sungw00 2023. 2. 17. 14:26
728x90

온라인 쇼핑몰의 경우 동시에 수십 명, 많게는 수백 명까지 접속해서 상품 조회, 주문하기 등의 기능을 사용하는데 Statement 또는 PreparedStatement 인터페이스로 데이터베이스와 연동해 작업해야 한다면 너무 비효율적

 

현재는 웹 애플리케이션이 실행됨과 동시에 연동할 데이터베이스와의 연결을 미리 설정해두고 필요할 때마다 미리 연결해 놓은 상태를 이용해 빠르게 데이터베이스와 연동하여 작업을 진행함

 

미리 데이터베이스와 연결시킨 상태를 유지하는 기술 = 커넥션풀(ConnectionPool)

 

ConnectionPool 등장 배경

 

 

커넥션풀 동작 과정

1. 톰캣 컨테이너를 실행한 후 응용 프로그램을 실행

2. 톰캣 컨테이너 실행 시 ConnectionPool 객체를 생성

3. 생성된 커넥션 객체는 DBMS와 연결

4. 데이터베이스와의 연동 작업이 필요할 경우 응용 프로그램은 ConnectionPool에서 제공하는 메서드를 호출하여 연동

 

  • 톰캣 컨테이너는 자체적으로 ConnectionPool 기능을 제공
  • 톰캣 실행 시 톰캣은 설정 파일에 설정된 데이터베이스 정보를 이용해 미리 데이터베이스와 연결하여 ConnectionPool 객체를 생성한 후 애플리케이션이 데이터베이스와 연동할 일이 생기면 ConnectionPool 객체의 메서드를 호출해 빠르게 연동하여 작업함
728x90