[JSP] DBCP

가잉·2023년 12월 5일
0

JSP

목록 보기
2/2

DBCP(DataBase Connection Pool)

  • 데이터베이스와 연결된 JND(Java Naming and Directory Interface)라는 커넥션을 미리 만들어 풀(pool) 속에 저장해두고 있다가 필요할 때 커넥션 풀에서 가져와 쓰고, 사용한 후에 다시 풀에 반환하는 기법

DBCP의 장점

  • 데이터베이스 접속에 필요한 커넥션을 미리 생성하기 때문에 시간을 절약할 수 있음
  • 커넥션 재사용으로 생성되는 커넥션의 수가 많지 않아도 됨
  • 데티어베이스 서버 주소, 데이터베이스 드라이버, 사용자명, 암호를 숨겨 놓음으로 보안을 유지할 수 있음
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"
    import="java.sql.*, javax.sql.*, javax.naming.*" %>
<%      // JSP 코드 내에서 Java 코드를 사용하기 위한 선언
try {	// 예외 처리를 위한 try 블록 시작

	// JNDI를 사용하여 초기 컨텍스트 생성
	Context init = new InitialContext();
    
    // 데이터 소스를 JNDI 명칭을 사용하여 검색
	DataSource ds = (DataSource)init.lookup("java:/comp/env/jdbc/OracleDB");
    
    // 데이터베이스 연결을 위한 Connection 객체 생성
	Connection con = ds.getConnection();
    
    // 데이터베이스 서버에 연결 성공 메시지 출력
	out.println("<h4>데이터베이스 서버에 연결되었습니다.</h4>");
} catch(Exception e){	// 예외 발생 시 처리를 위한 catch 블록 시작
	out.println("<h4>데이터베이스 서버에 연결이 되지 않았습니다.</h4>");
    
    // 예외 내용을 출력하여 디버깅 및 문제 해결에 도움
	e.printStackTrace();
    
    // 예외 정보를 문자열로 출력
	out.println(e.toString());
}
%>
profile
소프트웨어 전공 학생입니다

0개의 댓글