JDBC / JNDI / DBCP
JDBC : 데이터베이스 커넥션 인터페이스
DBCP : DB커넥션을 어플리케이션 소스 내에서 제어하면서 DB Pool 가짐
JNDI : DB커넥션을 WAS단에서 제어하면서 서버에서 하나의 Connection Pool 가짐
DBCP
- Database Connection Pool 의 약자이다. 요청이 올때마다 Connection 객체를 얻는 것이 아닌, 미리 일정 갯수 찍어내서 Connection Pool 로 관리
- WAS가 실행되면서 미리 일정량의 DB Connection 객체를 생성하고 Pool 이라는 공간에 저장해 둠
- HTTP 요청에 따라 필요할 때 Pool에서 Connection 객체를 가져다 쓰고 반환
JDBC 로딩 순서
- 드라이버 객체화 : Class.forName("oracle.jdbc.driver.OracleDriver");
- DB와 연결 : Connection con = DriverManager.getConnection();
- 실행도구 생성 (sql문을 실행시키기위한 Statement 객체 얻어오기) : Statement stmt = con.createStatement();
- SQL문 실행 : stmt.execute(sql);
- DB연결 종료 : .close();
DBCP 로딩 순서
- DB 서버 접속을 위해 JDBC 드라이버를 로드
- DB 접속 정보와 DriverManager.getConnection() Method를 통해 DB Connection 객체를 얻음
- Connection 객체로 부터 쿼리를 수행하기 위한 PreparedStatement 객체를 받음
- executeQuery를 수행하여 그 결과로 ResultSet 객체를 받아서 데이터를 처리
- 처리가 완료되면 처리에 사용된 리소스들을 close하여 반환
JNDI 로딩
- Eclipse : https://bogyum-uncle.tistory.com/201
- Tomcat : https://oingdaddy.tistory.com/34
'Programing > Spring' 카테고리의 다른 글
web.xml (0) | 2022.03.04 |
---|---|
Eclipse Tomcat Project 작동 순서 (0) | 2022.03.04 |
JdbcTemplate / NamedParameterJdbcTemplate (0) | 2022.03.03 |
Spring Basic (0) | 2022.03.03 |
Junit (0) | 2022.02.24 |