티스토리 뷰

DB

JDBC, DBCP, JNDI

H!GHR 2018. 10. 22. 16:43

JDBC / DBCP / JNDI

JAVA에서 DB Connection 하기 위해 사용하는 것들

학원 + 개인 포트폴리오 작업 등을 할 때는 JDBC만 사용해서 다른 존재를 몰랐는데

실무에서는 DBCP, JNDI를 사용해 DB와 연결했다.

어떤 차이들이 있을까?


JDBC

DB에서 정보를 가져올 때마다 DB 연결을 열고 닫고 함.

각 페이지에 DB 통신이 필요한 부분이 있으면 DB 객체 생성, Connection, Disconnection

속도 저하, 효율 떨어짐.


DBCP

어플리케이션 시작시 필요한 만큼 Connection 객체 만들어 Pool에 넣어둠.

필요할 때마다 갖다 쓰고 Pool에 반납.

어플리케이션 소스단에 설정.



JNDI

WAS단에 설정

WAS에 네이밍된 커넥션 풀을 가져옴 (이름으로 DB 연결)

JDBC로 url, user, password 쓰던걸 WAS의 context.xml에 씀 (Tomcat)

WAS에 DataSource 설정하는 이유 / Connection Pool 생성배경 / 예제 등

http://soul0.tistory.com/286

여기 매우 잘 나와있음.



Reference

https://ebonny.wordpress.com/2010/11/11/spring-%EC%97%90%EC%84%9C-jndi%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%98%EC%97%AC-%ED%86%B0%EC%BA%A3%EC%9D%98-server-xml-%EC%97%90-%EB%93%B1%EB%A1%9D%ED%95%9C-datasource-%EC%82%AC%EC%9A%A9%ED%95%98/

http://acet.pe.kr/214

댓글