- ConnectionPool
- 데이터 베이스의 접속 계정, 비밀번호, url을 반복하여 로직에 구성 하지 않고 미리 데이터베이스와 연결 시켜놓은 기술을 커넥션 풀(ConnectionPool)이라고 한다.
- 동작과정
- 톰캣 컨테이너 실행 -> ConnectionPool 객체 생성 -> DBMS 연결 -> 데이터베이스 연동
- 톰켓 컨테이너는 자체적으로 ConnectionPool 기능을 제공한다.
- JNDI
- ConnectionPool 객체를 구현시 JavaSE -> javax.sql.DataSource 클래스를 사용한다.
- 웹 애플리케이션 실행 시 톰캣이 생성한 ConnectionPool 객체에 접근시 JNDI를 이용한다.
- JNDI(Java Naming and Directory Interface)란 필요한 자원을 키/값(key/value) 쌍으로 저장한 후 필효할때 키를 얻는 방법
- 사용예
- 웹 브라우저에서 name/value 쌍으로 전송 한 후 Servlet에서 파라미터 값을 가져올때
- 해시맵(HaspMap), 해시테이블(HashTable)에 키/값 으로 저장 후 키를 이용해 값을 가져올때
- 웹 브라우저에서 도메인 네임으로 DNS 서버에 요청 할 경우 도메인 네임에 대한 IP 주소를 가져올때
- Intelij Connection Pool 설정 방법
- 맥북기준 Command + ; 입력 > Project Structure > Modules 클릭
- Web 패키지 클릭 > Add Application Server Secific descriptor 클릭
- Tomcat Server 선택 후 OK 클릭 > Context.xml내 Connection Pool 정보 입력
- name : DataSource에 대한 JNDI 이름
- auth : 인증 주체
- type : javax.sql.DataSource 클래스 사용
- driverClassName : 연결할 데이터 베이스 종류에 따른 드라이버 클래스 이름
- url : 데이터 베이스 주소
- maxActive : 데이터베이스 최대 동시 접속자 수
- maxWait : 새로운 연결에 대한 데이터 베이스 접속 대기 시간
'JAVA' 카테고리의 다른 글
Servlet 회원 정보 삭제 로직 (0) | 2021.08.01 |
---|---|
Servlet 회원정보 Insert 간단 예제 (0) | 2021.07.31 |
Servlet 비즈니스 로직 처리 (0) | 2021.07.27 |
Servlet 로그인 요청시 유효성 검사 간단 예제소스 (0) | 2021.07.26 |
javaScript를 이용한 Servlet 요청 (0) | 2021.07.26 |