본문 바로가기
Dev/Database

JDBC 프로그래밍 2 - JDBC 드라이버 자동 로딩

by vellahw 2022. 9. 6.

 

https://tavi.tistory.com/25

 

JDBC 프로그래밍

자바에서 데이터베이스를 사용할 때는 JDBC API를 이용해서 프로그래밍을 한다 JDBC는 Java DataBase Connectivity의 약자로, 자바에서 데이터베이스와 관련된 작업을 처리할 수 있도록 도와주는 API이다. 1

tavi.tistory.com


 

위와 같은 코드를 사용해서 JDBC 드라이버를 로딩 했었는데, 웹 컨테이너(톰캣, 제티 등)가 시작될 때 서블릿 클래스를 사용해서 자동으로 JDBC 드라이버를 로딩하도록 지정할 수 있다.

 

package loader;

import javax.servlet.http.HttpServlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import java.util.StringTokenizer;


public class Loader extends HttpServlet {
	
	@Override
	public void init(ServletConfig config) throws ServletException {
		try {
			String drivers = config.getInitParameter("jdbcdriver");
			StringTokenizer st =new StringTokenizer(drivers, ","); 
			while(st.hasMoreTokens()) {
				String jdbcDriver = st.nextToken();
				Class.forName(jdbcDriver);
			}
		} catch (Exception ex) {
			throw new ServletException(ex);
		}
	}
}

▲ Loader.java

웹 프로젝트 폴더의 src/main/java 폴더에 위치시킨다.

 

웹 어플리케이션이 시작될 때 자동으로 Loader 서블릿 클래스가 실행 되도록 설정 하기 위해서

WEB-INF\web.xml 파일에 아래와 같은 코드를 추가한다.

  <servlet>
  	<servlet-name>JDBCDriverLoader</servlet-name>
  	<servlet-class>loader.Loader</servlet-class>
  	<init-param>
  		<param-name>jdbcdriver</param-name>
  		<param-value>oracle.jdbc.driver.OracleDriver</param-value>
  	</init-param>
  <load-on-startup>1</load-on-startup>
  </servlet>

 

 

'Dev > Database' 카테고리의 다른 글

DUAL 테이블  (0) 2022.11.10
커넥션 풀  (0) 2022.09.06
JDBC 프로그래밍  (0) 2022.09.06
데이터베이스 프로그래밍  (0) 2022.09.05
SQL - JOIN 조인 2 (Outer Join, Self Join)  (0) 2022.08.31

댓글