JDBC(Java Database Connectivity)는 응용 프로그램들이 DBMS에 연결하고 데이터를 검색할 수 있도록 해주는 자바 클래스 모임이다. JNDI(Java Naming and Directory Interface, 리소스 이름 지정과 위치 정보 서비스) 기술을 사용하여 드라이버를 로딩하여 해당 데이터 베이스에 따라 컨넥션을 생성할 수 있다. 따라서 JDBC를 사용하면 데이터베이스 접속에 관한 프로그램 작업을 줄일 수 있다.
또한, JDBC 라이브러리는 관계형 데이터베이스에 접근하고, SQL 쿼리문을 실행하는 방법을 제공한다. 즉, JDBC라는 것은 관계형 데이터베이스와 컨넥션하여 SQL 명령들을 수행할 수 있게 해주는 방법을 제공하는 클래스이다.
JDBC 라이브러리는 데이터 액세스를 위한 고수준 추상 레이어가 아니라 SQL문을 실행시키기 위한 인터페이스로 설계되었다. 그래서 자바 클래스를 데이터베이스의 레코드에 자동적으로 대응되게끔 설계되진 않았지만, 어플리케이션과 연동될 데이터베이스는 JDBC 인터페이스를 사용하여 대규모의 어플리케이션을 작성할 수 있다.
■ JDBC를 이용한 데이터베이스 연결
JDBC를 이용하여 데이터베이스와 JSP를 연결하기 위해서는 다음의 순서를 가져야 한다.
JDBC드라이버 load → Connection 객체 생성 → Statement 객체 생성 → Query 수행
드라이버 연결은 MySQL 을 사용할 경우 http://dev.mysql.com/downloads/connector/j/5.1.html 주소로 이동하여 zip 파일을 받은 다음 이클립스로 개발할 경우 외부 라이브러리로 임폴트 시키고 JDK lib 폴더와 톰캣의 commons/lib 폴더에 저장한다. 그리고 웹 프로젝트의 WEB-INF/lib 폴더에서 저장시킨다.
■ 데이터베이스 드라이버 연결 테스트 코드
<%@ page contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>
<%@ page import="java.sql.*" %>
<html>
<head><title>JDBC 드라이버 테스트</title>
<h2> JDBC 드라이버 테스트 </h2>
<%
Connection conn = null;
try {
String jdbc_url = "jdbc:mysql://localhost:3306/jspbeginner";
String db_id = "user";
String db_pass = "userpass";
Class.forName("com.mysql.jdbc.Driver"); /* mysql JDBC드라이버 로드 */
conn = DriverManager.getConnection(jdbc_url, db_id, db_pass); /* 컨넥션 객체 생성 */
out.println(" Connection success");
}catch (Exception e) {
e.printStackTrace();
}
%>
</head>
</html>
(오류 화면이 발생하면 드라이버가 제대로 설치되었나 확인)
이 파일은 mysql 에 test 데이터 베이스를 만든 후 user/userpass 를 사용하여 데이터 베이스 연결 테스트를 하는 jsp파일이다.
'자바(Java) > JAVA 2EE' 카테고리의 다른 글
로그인 페이지 (0) | 2009.01.15 |
---|---|
JSP 페이지 제어방법 (0) | 2009.01.11 |
request 객체를 이용한 헤더와 파라미터 출력 예제 (0) | 2008.12.22 |
사용자에게 응답해주는 response 객체 (javax.servlet.ServletResponse) (0) | 2008.12.22 |
요청 정보 객체 (javax.servlet.http.HttpServletRequest) (0) | 2008.12.22 |