본문 바로가기

BackEnd/JSP

[JSP 웹 프로그래밍] JDBC 데이터베이스와 JSP 연동 1 (JDBC 드라이버 로딩, DBMS 접속)

728x90
반응형

1. JDBC(Java DataBase Connectivity)
   ▷ 자바/JSP 프로그램 내에서 데이터베이스와 관련된 작업을 처리할 수 있도록 도와주는 자바 표준 인터페이스
   ▷ 관계형 데이터베이스 시스템에 접근하여 SQL 문을 실행하기 위한 자바 API 또는 자바 라이브러리
   ▷ JDBC API를 사용하면 DBMS의 종류에 상관없이 데이터베이스 작업을 처리할 수 있음

 

◎ JDBC를 사용한 JSP와 데이터베이스의 연동

① java.sql.* 패키지 임포트
② JDBC 드라이버 로딩
③ 데이터베이스 접속을 위한 Connection 객체 생성
④ 쿼리문을 실행하기 위한 Statement/PreparedStatement/CallableStatement 객체 생성
⑤ 쿼리 실행
⑥ 쿼리 실행의 결과 값(int, ResultSet) 사용
⑦ 사용된 객체(ResultSet, Statement/PreparedStatement/CallableStatement, Connection) 종료

 

 

 

2. JDBC 드라이버 로딩 및 DBMS 접속

 

◎ JDBC 드라이버 로딩하기
   ▷ JDBC 드라이버 로딩 단계에서는 드라이버 인터페이스를 구현하는 작업
   ▷ Class.forName( ) 메소드를 이용하여 JDBC 드라이버를 로딩


   ▷ JDBC 드라이버가 로딩되면 자동으로 객체가 생성되고 DriverManager 클래스에 등록

   ▷  JDBC 드라이버 로딩은 프로그램 수행 시 한 번만 필요

 

◎ Connection 객체 생성하기
   ▷ JDBC 드라이버에서 데이터베이스와 연결된 커넥션을 가져오기 위해 DriverManager 클래스의

        getConnection( ) 메소드를 사용
   ▷ DriverManager 클래스로 Connection 객체를 생성할 때 JDBC 드라이버를 검색하고, 

        검색된 드라이버를 이용하여 Connection 객체를 생성한 후 이를 반환


아래의 방법(String url, String user, String password 메소드 사용)이 가장 많이 사용하는 방법입니다!

 

 

◎ 데이터베이스 연결 닫기
   ▷ 데이터베이스 연결이 더 이상 필요하지 않으면 데이터베이스와 JDBC 리소스가 자동으로 닫힐 때까지

        대기하는 것이 아니라 close( ) 메소드로 생성한 Connection 객체를 해제
   ▷ 일반적으로 데이터베이스 리소스를 사용하지 않기 위해 사용을 끝내자마자 리소스를 해제하는 것이 좋음

 

◎ JDBC API로 데이터베이스 접속하기

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Database SQL</title>
</head>
<body>
	<%
		Connection conn = null;
		try{
			String url = "jdbc:mysql://localhost:3306/jspbookdb";
			String user = "root";
			String password = "1234";
			
			Class.forName("com.mysql.cj.jdbc.Driver");
			conn = DriverManager.getConnection(url, user, password);
			out.println("데이터베이스 연결이 성공했습니다.");
		} catch (SQLException ex){
			out.println("데이터베이스 연결이 실패했습니다.<br>");
			out.println("SQLException: " + ex.getMessage());			
		} finally{
			if(conn != null) conn.close();
		}
	%>
</body>
</html>


내부에 mysql-connector-j-8.0.32.jar을 넣고 build해야합니다.

데이터베이스 연결이 성공했다고 나타나면 연결 완료된 상태입니다!

 

MySQL과 JSP를 연결해서 데이터 베이스 값들을 JSP에서 불러올 수 있습니다.

 

뭐든 데이터베이스와 연결하는 것이 가장 중요하네요!!

 

데이터베이스와 연동해서 값들을 어떻게 불러오는지 다음 장에서 시작해보죠!!

 

많은 분들의 피드백은 언제나 환영합니다!  많은 댓글 부탁드려요~~

 

728x90
반응형