V-RIS 개발일지 (7) database 연동(MySQL, JDBC)

KHJ·2022년 4월 30일
0

V-RIS 개발일지

목록 보기
7/15

우리는 데이터베이스로 MySQL을 사용하기로 했다.


MySQL을 사용하는 이유는 우선 무료이고,,
학교 데이터베이스설계 수업에서 배운 것이 mysql이기 때문,,

JDBC를 사용한 이유?

특별한 이유는 없다. 우선 예전에 학교 수업에서 사용해 본 적이 한 번 있고, 예전에 진행한 토이프로젝트에서도 JDBC를 이용했기 때문에 자연스럽게 사용하게 되었다.

하지만 프로젝트를 진행하면서 공부하기 위해 들은 강의도 참고하고 구글링을 하다 보니 JDBC 말고도 Hibernate, Mybatis, JPA, Spring Data JPA등 다양한 방법이 있다는 것을 알게 되었고 이후에는 Spring Data JPA로 수정하게 되었다.

Spring Data Jpa에 관한 것은 다음 포스트에서 다루고, 오늘은 JDBC에 대해서 다루려고 한다.


JDBC란?

JDBC(Java Database Connectivity) 는 자바에서 데이터베이스에 접속할 수 있도록 하는 자바의 표준 api이다.
자바에서 db에 접근하는 기술들의 근간이 된다.


jdbc를 사용하기 위해서는

1) JDBC 드라이버 로드
2) DB 연결
3) SQL 문
4) DB 연결 종료

의 흐름으로 진행된다.


JDBC를 통해 DB 연동하기

  1. spring boot에서는 jdbc 연동을 위한 starter를 제공하므로 build.gradle에 다음을 추가한다.
implementation 'org.springframework.boot:spring-boot-starter-data-jdbc'
implementation 'mysql:mysql-connector-java'
  1. application.properties에 다음을 추가한다.
# MySQL 설정
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

# DB Source URL
spring.datasource.url=jdbc:mysql://localhost:3306/스키마명?useSSL=false&useUnicode=true&serverTimezone=Asia/Seoul

# DB username
spring.datasource.username=아이디

# DB password
spring.datasource.password=비밀번호

# 콘솔에 SQL문 출력 여부 true
spring.jpa.show-sql=true

# DDL(create, alter, drop) 옵션
spring.jpa.hibernate.ddl-auto=update

# 보이는 query를 가독성 좋게 formatting
spring.jpa.properties.hibernate.format_sql=true

을 하면 기본적인 설정은 끝난다.



DDL 옵션

위 과정에서 주의해야 할 부분은 DDL 옵션을 설정하는 부분이다.

DDL 옵션의 종류는 create, create-drop, update, validate, none이 있다.

  • create         : 기존 테이블 삭제 후 다시 생성
  • create-drop  : create와 같으나 종료 시점에서 drop
  • update        : 변경 부분만 반영
  • validate       : entity와 테이블이 정상 매핑되었는지만 확인
  • none          : 사용하지 않음



IntelliJ에서 DB 연결 확인하기

위 사진과 같이 User와 Password, Database 입력 후 Test Connection 클릭했을 때 Succeeded가 나오면 정상적으로 연결된 것이다.





참고 : https://smpark1020.tistory.com/140?category=857916

1개의 댓글

comment-user-thumbnail
2022년 5월 1일

척척백엔드대장님 멋저요~

답글 달기