[Spring] Connection pool 을 위한 셋팅

Kim Ju Young·2021년 12월 14일
0

Spring

목록 보기
1/3
post-thumbnail

Connection pool 이란?

Connection pool 을 알기 전에 DataBase Connection에 대한 형태를 알아야합니다.
기본적으로 JDBC 에서 데이터베이스와 연결 하기 위해선 다음과 같은 요소가 필요합니다.

  1. JDBC 드라이버 로드
  2. 데이터베이스 연결

개발자가 데이터베이스에 정보가 필요해 연결할 때마다 저 둘이 필요합니다.
연결 할 때마다 연결을 위한 클래스 객체를 만들면, 얼마나 비효율적일지 모릅니다.

위 그림의 형태처럼 Connection Pool 은 한번 연결하는 객체를 생성해두면 다시 연결할 필요가 없습니다.
디자인 패턴의 싱글턴 형태라고 생각하시면 되겠습니다.

반대로, 밑처럼 연결을 계속하면 연결 객체가 계속 생성되어 비효율적입니다.

Connection Pool을 이용하면, 기존의 Connection만 이용하면 되며, 자원을 아끼는 일이라고 생각하시면 되겠습니다.

위치

정상적인 Spring 프로젝트를 위한 셋팅이 마쳤다면 Servers 가 자신의 프로젝트 하단에 생겼을 겁니다.

Servers 의 context.xml

Oracle 18c, JDBC 기준 아래 코드를 context.xml 에 넣어주면 됩니다.

<Resource
    name="jdbc/Oracle"
    auth="Container"
    type="javax.sql.DataSource"
    driverClassName="oracle.jdbc.OracleDriver"
    url="jdbc:oracle:thin:@localhost:1521:xe"
    username="본인의 유저네임"
    password="본인의 패스워드"
    maxActive="50"
    maxWait="-1"
/>

기본적인 연결을 위해 driver, url, username, password를 받는 모습입니다.

이런 형태로 넣어주시면 되겠습니다.

그런데 여기서 주의하실 점은 저 빨간 줄 부분을 잘 보셔야합니다.

Spring이시라면 root-context를 보셔야하고, 다른 프로젝트라면 dataSource 를 연결해주시는 이름을 보셔야합니다.

이 이름과 동일하여야 잘 실행될겁니다.

profile
호호선생

0개의 댓글