본문 바로가기

IT공부/스프링

MySQL 연결 테스트

MySQL 연결 테스트

MySQL이 정상적으로 설치되었다면 jUnit을 이용하여 JDBC연결을 테스트해야 한다.

 

스프링 템플릿 프로젝트를 생성하면 jUnit4가 기본적으로 설치되어 있다. 

 

먼저 MySQL 테스트를 진행하기 위해서는 MySQL의 JDBC 연결을 위한 드라이버인 MySQL Connector/J라는 JDBC 라이브러리가 필요하다(C:\Program Files (x86)\MySQLC:\Program Files (x86)\MySQL\Connector.J 5.1). MySQL을 설치하면 기본적으로 설치된다. 

 

프로젝트 내에서는 pom.xml을 통해 설정할 수 있다. 

 

<dependency>

           <groupId>mysql</groupId>

           <artifactId>mysql-connector-java</artifactId>

           <version>5.1.41</version>

</dependency>

 

MySQL의 경우 JDBC를 통해 테스트할 경우 특정 호스트만 연결을 허용하므로 간다하게나마 연결 테스트를 하는 게 좋다.

 

※ 자바의 1.6 이하 버전의 경우 try ~ catch ~ finally 구조를 이용할 경우 명시적으로 연결을 해제해야하는 불편함이 있었지만 1.7 부터 try ~ with 문법이 나오면서 아래와 같이 자동으로 close()가 호출되게 하는게 가능해졌다. 단, try()안에 선언되는 객체는 AutoCloseable 인터페이스를 구현해야한다.

 

try(AutoCloseable 인터페이스를 구현한 타입의 변수명){

 

}catch(Exception e) {

...

}

 

try ~ with 구문은 JDK 1.7 이상에서만 지원되기 때문에 pom.xml에서 JDK 버전을 확인한다.

 

<properties>

           <java-version>1.8</java-version>

           <org.springframework-version>4.3.8.RELEASE</org.springframework-version>

           <org.aspectj-version>1.6.10</org.aspectj-version>

           <org.slf4j-version>1.6.6</org.slf4j-version>

</properties>

 

jUnit 버전을 아래와 같이 변경한다. 스프링 템플릿 프로젝트를 생성한 경우 버전이 4.7로 설정된다.

 

<!-- Test -->

<dependency>

           <groupId>junit</groupId>

           <artifactId>junit</artifactId>

           <version>4.12</version>

           <scope>test</scope>

</dependency>

 

jUnit으로 JDBC 연결 테스트를 하기 위해 src/test/java 밑에 아래와 같이 MySQLConnectionTest 테스트 코드를 작성한다.

  1. package org.project.web;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5.  
  6. import org.junit.Test;
  7.  
  8. public class MySQLConnectionTest {
  9.  
  10.        private static final String DRIVER = "com.mysql.jdbc.Driver";
  11.        //MySQL Driver 6.0 이상"com.mysql.cj.jdbc.Driver";
  12.       
  13.        private static final String URL = "jdbc:mysql://127.0.0.1:3306/book_ex?useSSL=false";
  14.        //MySQL 6.1 이상 "jdbc:mysql://127.0.0.1:3306/book_ex?useSSL=false&serverTimezone=Asia/Seoul";
  15.       
  16.        private static final String USER =
  17.                       "admin";
  18.        private static final String PW =
  19.                       "121314";
  20.                      
  21.       
  22.        @Test
  23.        public void testConnection() throws Exception{
  24.               //드라이버 등록
  25.                Class.forName(DRIVER);
  26.               
  27.                try(Connection con = DriverManager.getConnection(URL, USER, PW)){
  28.                      
  29.                       System.out.println(con);
  30.                      
  31.                      
  32.                }catch(Exception e){
  33.                       e.printStackTrace();
  34.                }
  35.        }
  36. }

아래와 같이 MySQL Connection 객체가 생성되는지 테스트해본다.

 

 

'IT공부 > 스프링' 카테고리의 다른 글

스프링에서 MyBatis 사용하기  (0) 2020.07.04
스프링 MVC  (0) 2020.07.04
MyBatis 연동  (0) 2020.07.03
MySQL 설치  (0) 2020.07.03
개발환경설정  (0) 2020.07.03