2022.09.26 JNDI 기초
추후 Connection Pool부터 기초 개념 정리 필요
JNDI(Java Naming Directory Interface)란
- 디렉터리 서비스에서 제공하는 데이터 및 객체를 발견하고 참고하기 위한 자바 API
- 연결하고 싶은 데이터베이스의 DB Pool을 미리 Naming 시켜주는 방법
- 운영, 관리, 최적화 문제 대처에 이점이 있다.
- DB 커넥션을 WAS단에서 제어하면서 서버에서 하나의 커넥션 풀을 갖는다.
DBCP(Database Connection Pool)
- 일정 개수의 Connection을 만들어 Pool에 저장하고 필요에 따라 Connection을 제공하고 보관하는 것
- 데이터베이스 Connection을 어플리케이션 소스단에서 설정
WAS에 DataSource 설정하는 것이 좋은 이유
- 운영을 할 때는 WAS를 운영하는 관리자가 따로 있으므로
- 하나의 WAS에 여러가지 웹 어플리케이션을 올리므로
JNDI 설정을 위해 필요한 것
Spring xml 파일
<beans xmlns:jee="http://www.springframework.org/schema/jee" xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee.xsd">
<jee:jndi-lookup id=""
jndi-name=""
expected-type="javax.sql.DataSource" />
</beans>
Tomcat Server.xml, Context.xml
(자세한 내용은 References JNDI 설정법 참고)
References
Connection Pool, JDBC, DBCP, JNDI
WAS에 DataSource 설정 이유, JNDI 설정법