본문 바로가기
Java/Spring

Spring에 DB 연동 셋업

by amungstudy 2023. 7. 27.

 

Spring에서 

help->install

 

https://download.eclipse.org/releases/2021-09/

 

체크박스 잘 보고 따라하기

 

나머지는 이클립스랑 똑같이 셋업

 

 

1. sql 파일 생성

 

CREATE DATABASE digital_spring;

USE digital_spring;

CREATE TABLE IF NOT EXISTS tbl_member(
uno int PRIMARY KEY AUTO_INCREMENT,
userid VARCHAR(50) NOT NULL UNIQUE,
userpw VARCHAR(50) NOT NULL,
username VARCHAR(45) NOT NULL,
regdate TIMESTAMP DEFAULT now(),
updatedate TIMESTAMP DEFAULT now()
);

 

2. digital_spring으로 DB URL변경하기.

 

3. MAVEN repository 에서

MySQL Connector/J  라이브러리 추가


junit으로 테스트해보기

 

package com.bitc.db_test;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class MySQLConnectorTest {

String driver = "com.mysql.cj.jdbc.Driver";
String url = "jdbc:mysql://localhost:3306/digital_spring";
String user = "digital";
String pass = "12345";


@org.junit.Test
public void test() {
System.out.println("Test 실행 method");
Connection conn = null;
try {
Class.forName(driver);

conn = DriverManager.getConnection(url,user,pass);

} catch (ClassNotFoundException e) {
System.out.println("DriverClass 찾을 수 없음. 라이브러리 등록해주세요.");
} catch (SQLException e) {
System.out.println("DB 연결정보 오류 : "+e.getMessage());
}finally {
if(conn != null) {
try {
conn.close();
} catch (Exception e) {}
}
}

}


}

 


Spring에 DB 등록하기(고정사용)

 

MAVEN repository -> 'Spring JDBC'

pom.xml에 추가.

 

dataSource : 커넥션 풀 구현

root-context.xml 에 작성

<bean id = "ds" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/digital_spring"/>
<property name="username" value="digital"/>
<property name="password" value="12345"/>
</bean>

 


테스트 환경용  DB 등록

 

MAVEN repository -> 'Spring TestContext Framework'

pom.xml에 추가.

 

 

src/test/java 내에서 테스트해보기...

//junit 4.12버전 이상이어야 spring container와 함께 테스트 가능.
@RunWith(SpringJUnit4ClassRunner.class) // spring test lib로 테스트
@ContextConfiguration( // load할 파일 위치 지정
locations = {"file:src/main/webapp/WEB-INF/spring/root-context.xml"}
)
public class DataSourceTest {

@Autowired
DataSource ds;

@Test
public void testConn() {
Connection conn = null;

try {
conn = ds.getConnection();
System.out.println(conn);
} catch (SQLException e) {
System.out.println("dataBase 연결 실패");
e.printStackTrace();
}finally {
if(conn != null) {
try {
conn.close();
} catch (SQLException e) {}
}
}
}

}


src/test/resources에 root-context.xml 내용 똑같이 만들엇.

DataSourceTest.java 에서

 

locations = {"classpath:test-context.xml"})

 

 // classpath: src/test/resources폴더경로 접두어

 

'Java > Spring' 카테고리의 다른 글

7.28 filter  (0) 2023.07.28
MyBatis 설정(ORM)  (0) 2023.07.27
7.25 lombok 라이브러리 추가, 의존성 주입, Javax Annotation API  (0) 2023.07.25
SPRING 관련 용어들  (0) 2023.07.25
7.24 Spring Framework (Spring MVC)구조  (0) 2023.07.24