[JSP 기초] JDBC 드라이버를 이용해 DBMS와 JSP 연동하기

2022. 12. 13. 22:11·■ Web/JSP
목차
  1. 0. 목적
  2. 1. 참고
  3. 2. DBMS Connector 다운로드
  4.    2-1. MySQL DB Connector
  5.    2-2. Maria DB Connector
  6. 3. 프로젝트 파일에 JDBC 드라이버 설치
  7. 4. DBMS 연결 테스트 (코드 작성, 실행)
  8.    4-1. MySQL DB
  9.    4-2. Maria DB
  10. 5. 소스코드 다운로드
반응형

0. 목적

JDBC 드라이버를 이용해, JSP와 DBMS를 연동하는 방법에 대해 알아보자. DBMS라 함은, 데이터베이스 관리 시스템의 약자로 MySQL DB, Maria DB 등등이 이에 포함된다. 본 포스트에서는 DBMS의 대표적인 MySQL DB와 Maria DB들을 JSP와 연동하는 방법에 대해 안내하고자 한다. 또한, JSP와 DBMS를 연동하는 방법을 숙지하고 있어야 로그인 폼, 게시판 폼 등 기본적인 기능을 제공하는 웹사이트를 제작할 수 있기 때문에 가히 필수적인 부분이라고 할 수 있다.

 

 

 


1. 참고

본 포스트에서는 Eclipse IDE for Web Devloper 2020-06 버전과 MySQL 8.0.31, Tomcat v9.0을 사용했으니 참고하자. 타 버전 사용자이더라도, 필자와 크게 다를 부분은 없을 것이다.

 

 - Eclipse 프로젝트에 Tomcat Server가 추가되어 있지 않다면, 웹서버가 구축되어 있지 않아 .jsp파일을 실행하기 어려우니 아래의 링크를 참고해 조치하기 바란다.

 

[Eclipse Tip] Eclipse 프로젝트에 Apache Tomcat 서버 설정하기

0. 목적 Eclipse 프로젝트에서 사용할 수 있는 Apache Tomcat 서버를 설정해 보도록 하자. 주로 Eclipse에서 Dynamic Web Project를 사용하는 사람들이라면, 반 필수적으로 사용해야 하는 서버이지 않을까 싶다

acredev.tistory.com

 

 

 


2. DBMS Connector 다운로드

   2-1. MySQL DB Connector

 

MySQL :: Download Connector/J

MySQL Connector/J 8.0 is highly recommended for use with MySQL Server 8.0, 5.7 and 5.6. Please upgrade to MySQL Connector/J 8.0.

dev.mysql.com

MySQL Connector (for JAVA)를 내려받기 위해 상기 링크에 접속한다.

 

 

 

Select Operating System을 Platform Independent로 설정하고, ZIP Archive를 Download 한다.

 

 

 

다른 파일은 필요 없고, 해당 ZIP 파일에서 mysql-connector-j-8.0.31.jar 파일만 확보하면 된다.

 

 

 

   2-2. Maria DB Connector

 

Download MariaDB Connectors for data access & streaming | MariaDB

Download connectors for high-performance data access & data streaming. MariaDB connectors include Python, C, C++, Java 7, Java 8, ODBC, R2DBC and Node.js.

mariadb.com

MariaDB Connector (for JAVA)를 내려받기 위해 상기 링크에 접속한다.

 

 

 

아래와 같이 Connectors 다운로드 범주를 선택하고, Download 버튼을 눌러 파일을 내려받자.

 

Product : Java 8+ connector
Version : 최신 버전
OS : Platform Independent

 

 

 


3. 프로젝트 파일에 JDBC 드라이버 설치

각 DBMS의 connector.jar 파일을 내려받았으니, 이제 Eclipse 프로젝트 폴더에 설치해 줄 차례이다.

프로젝트명\WebContent\WEB-INF\lib\

프로젝트 폴더의 상기 경로 (lib 폴더)에 내려받은 connector.jar 파일을 Copy 한다. 본인이 사용할 DBMS의 connector.jar 파일만 Copy 하면 된다.

 

 

728x90

4. DBMS 연결 테스트 (코드 작성, 실행)

   4-1. MySQL DB

프로젝트 폴더에 MySQL_ConnectTest.jsp 파일을 하나 생성한다.

 

 

 

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>MySQL 연결 드라이버 테스트</title>
</head>
<body>
<h1>MySQL 연결 드라이버 테스트</h1>
<%
String jdbcUrl = "jdbc:mysql://localhost:3306/world";
String dbId = "root";
String dbPwd = "root";
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection connection = DriverManager.getConnection(jdbcUrl, dbId, dbPwd);
out.println("MySQL 연결 성공");
}
catch (Exception ex)
{
out.println("연결 오류입니다. 오류 메시지 : " + ex.getMessage());
}
%>
</body>
</html>

연결 테스트를 위해서 MySQL에 기본 제공되는 worldDATABASE와 연결을 시도했다. worldDATABASE가 없는 사용자의 경우, 본인이 소유하고 있는 다른 DB SCHEMAS 명칭을 삽입해서 이용하면 된다. 자세한 코드 설명은 아래를 참고하자.

 

 

코드 상세 설명

▣ String 변수?

본 포스트에서는 총 3가지의 String 변수를 사용했다.

문자열 변수명 설명
jdbcUrl JDBC드라이버를 이용해 JSP와 MySQL간 연결하기 위한 주소를 작성하는 변수이다.
dbId MySQL 데이터베이스에 연결하기 위한 사용자 ID를 변수에 선언하면 된다.
기본값은 root이다.
dbPwd MySQL 데이터베이스에 연결하기 위한 사용자 PW를 변수에 선언하면 된다.

 

▣ JDBC 연결 주소의 구조는?

JDBC 연결 주소 구조 설명
DB 명칭 JDBC 드라이버에서 명시하는 DB 명칭을 입력하면 된다.
우리는 MySQL에 연결하기 위함이므로, mysql을 입력한다.
DB 연결 주소 내 컴퓨터의 MySQL Server에 연결하기 위해서는 localhost를 입력한다.
타인 컴퓨터의 MySQL Server에 연결하기 위해서는, 타인 컴퓨터의 IP주소를 입력한다.
DB 연결 포트 기본값은 3306이다.
설치시, 다른 포트를 지정한 사용자는 해당 값을 입력하면 된다.
DB 명칭 연결하고자 하는 DB SCHEMAS 명칭을 입력한다.

 

▣ 예외 처리를 위한 try, catch

혹시라도 발생할 오류 메시지 확인을 위해 try / catch문을 사용했다.

   ① DB 연결 성공 시, out.println을 통해 "MySQL 연결 성공" 문구가 출력될 것이다.
   ② DB 연결 실패 시, out.println을 통해 발생한 Exception의 ex문구가 출력되어 확인 후 조치할 수 있을 것이다.

 

 

Tomcat Server를 통해 Run 해 보니, 정상적으로 연결이 된 모습을 확인할 수 있다.

 

 ※ 연결이 실패할 경우, Exception 메시지를 확인하면 조치하는데 도움이 될 것이다.

 

 

 

   4-2. Maria DB

프로젝트 폴더에 MariaDB_ConnectTest.jsp 파일을 하나 생성한다.

 

 

 

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>MariaDB 연결 드라이버 테스트</title>
</head>
<body>
<h1>MariaDB 연결 드라이버 테스트</h1>
<%
String jdbcUrl = "jdbc:mariadb://localhost:3307/sys";
String dbId = "root";
String dbPwd = "root";
try
{
Class.forName("org.mariadb.jdbc.Driver");
Connection connection = DriverManager.getConnection(jdbcUrl, dbId, dbPwd);
out.println("MariaDB 연결 성공");
}
catch (Exception ex)
{
out.println("연결 오류입니다. 오류 메시지 : " + ex.getMessage());
}
%>
</body>
</html>

연결 테스트를 위해, MariaDB에서 기본 제공하는 sysDATABASE와 연결을 시도했다. sys DATABASE가 없는 사용자의 경우, 본인이 소유하고 있는 다른DB SCHEMAS 명칭을 삽입해서 이용하면 된다.

 

코드구조의 경우, MySQL 연동과 비교하여 크게 다를 것이 없다. 하지만, DBMS가 다르기 때문에 JDBC 연결 주소 두 가지만 달라진 다는 것을 명심하자.

 

 

 

코드 상세 설명

▣ String 변수?

본 포스트에서는 총 3가지의 String 변수를 사용했다.

문자열 변수명 설명
jdbcUrl JDBC드라이버를 이용해 JSP와 MariaDB간 연결하기 위한 주소를 작성하는 변수이다.
dbId MariaDB 데이터베이스에 연결하기 위한 사용자 ID를 변수에 선언하면 된다.
기본값은 root이다.
dbPwd MariaDB 데이터베이스에 연결하기 위한 사용자 PW를 변수에 선언하면 된다.

 

▣ JDBC 연결 주소의 구조는?

JDBC 연결 주소 구조 설명
DB 명칭 JDBC 드라이버에서 명시하는 DB 명칭을 입력하면 된다.
우리는 MySQL에 연결하기 위함이므로, mysql을 입력한다.
DB 연결 주소 내 컴퓨터의 MySQL Server에 연결하기 위해서는 localhost를 입력한다.
타인 컴퓨터의 MySQL Server에 연결하기 위해서는, 타인 컴퓨터의 IP주소를 입력한다.
DB 연결 포트 기본값은 3306이다.
설치시, 다른 포트를 지정한 사용자는 해당 값을 입력하면 된다.
DB 명칭 연결하고자 하는 DB SCHEMAS 명칭을 입력한다.

 

▣ 예외 처리를 위한 try, catch

혹시라도 발생할 오류 메시지 확인을 위해 try / catch문을 사용했다.
   - DB 연결 성공 시, out.println을 통해 "MariaDB 연결 성공" 문구가 출력될 것이다.
   - DB 연결 실패 시, out.println을 통해 발생한 Exception의 ex문구가 출력되어 확인 후 조치할 수 있을 것이다.

 

 

 

Tomcat server를 통해 Run 해 보니, 정상적으로 연결이 된 모습을 확인할 수 있다.

 

 ※ 연결이 실패할 경우, Exception 메시지를 확인하면 조치하는데 도움이 될 것이다.

 

 

 


5. 소스코드 다운로드

본 Eclipse Web 프로젝트의 소스코드는 필자의 GitHub에서 제공된다. 참고하면 도움이 될 것 같다.

 

▣ 프로젝트 파일 전체 다운로드

 

GitHub - acredev/blog_JSP_ex

Contribute to acredev/blog_JSP_ex development by creating an account on GitHub.

github.com

 

▣ MySQL_ConnectTest.jsp 코드 확인

 

GitHub - acredev/blog_JSP_ex

Contribute to acredev/blog_JSP_ex development by creating an account on GitHub.

github.com

 

▣ MariaDB_ConnectTest.jsp 코드 확인

 

GitHub - acredev/blog_JSP_ex

Contribute to acredev/blog_JSP_ex development by creating an account on GitHub.

github.com

 

300x250
반응형
저작자표시 비영리 변경금지 (새창열림)
  1. 0. 목적
  2. 1. 참고
  3. 2. DBMS Connector 다운로드
  4.    2-1. MySQL DB Connector
  5.    2-2. Maria DB Connector
  6. 3. 프로젝트 파일에 JDBC 드라이버 설치
  7. 4. DBMS 연결 테스트 (코드 작성, 실행)
  8.    4-1. MySQL DB
  9.    4-2. Maria DB
  10. 5. 소스코드 다운로드
'■ Web/JSP' 카테고리의 다른 글
  • [JSP 개발] DB연동 게시판 파일 다운로드 / 업로드 기능 구현
  • [JSP 개발] MySQL DB 연동: 간단한 JSP 게시판 만들기 (글 쓰기 / 열람 / 수정 / 삭제)
Min Hyuk-Lee
Min Hyuk-Lee
시스템 엔지니어로 근무하고 있습니다.
  • Min Hyuk-Lee
    아크레의 개발로그
    Min Hyuk-Lee
    m_file@naver.com
  • 전체
    오늘
    어제
    • 📝 Log. (81)
      • ■ Dev. Language (11)
        • C (5)
        • C# (6)
      • ■ Dev. ETC (8)
        • Unity 3D (3)
        • Android Studio (JAVA) (5)
      • ■ Web (6)
        • HTML (3)
        • JSP (3)
      • ■ Linux (8)
        • Shell (2)
        • Linux Tip. (6)
        • 보안취약점 진단 (0)
      • ■ Windows (4)
        • Server (1)
        • Windows Tip. (3)
      • ■ VM (1)
        • VMWare (1)
        • Virtual Box (0)
      • ■ Database (9)
        • MySQL (7)
        • OracleDB (2)
      • ■ DevKit (5)
        • IDE (4)
        • Tool (1)
      • ■ Error (17)
        • Linux 오류해결 (4)
        • DB 오류해결 (3)
        • IDE 오류해결 (2)
        • VM 오류해결 (3)
        • Unity 오류해결 (4)
        • SSH, SFTP 오류해결 (1)
      • ■ Photoshop (3)
        • 디자인&이미지 창작 (3)
      • ■ Document (3)
        • MS Word (2)
        • PDF (1)
      • ■ Study (4)
        • Baekjoon (4)
      • ■ 작문 (1)
        • 회고 (1)
      • ■ ETC (1)
        • Car (0)
        • etc (1)
  • 🌐 Menu

    • 📓 Guestbook
  • 🔗 Other Links

    • GitHub
    • 아크레의 IT ISSUE
  • 📢 Notice

    • [스킨 업데이트] hELLO v4.10.0 적용완료
    • [스킨 업데이트] hELLO v4.9.0 적용 완료
    • [스킨 업데이트] hELLO v4.8.1 적용 완료
  • 💬 Recent Comments

  • hELLO· Designed By정상우.v4.10.0
Min Hyuk-Lee
[JSP 기초] JDBC 드라이버를 이용해 DBMS와 JSP 연동하기

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.