반응형

지난 시간, 간단한 model을 생성하고, 해당 model을 클래스 내에서 직접 생성하고, 클라인언트로부터 받은 정보를 통해 CRUD를 구현해 보았다.
↓↓↓

2023.11.08 - [Web Application/Backend] - [REST API] Spring Boot로 REST API CRUD 간단 구현 (1)

 

[REST API] Spring Boot로 REST API CRUD 간단 구현 (1)

💡 REST API를 사용하여 간단한 CRUD 동작을 구현하기 ✅ 프로젝트 세팅 ✔ Spring Initializer를 이용하여 프로젝트 파일 생성 ✔ Gradle 선택 ✔ 스프링 버전 2.7.x ✔ 자바 버전 11 ❗ 참고로 스프링 버전 3

im-gonna.tistory.com

 

이번에는 직접 MYSQL db를 생성하고 db와 연동해보자.

 

💡 MYSQL, JPA 종속성 추가하기

 

MYSQL과 JPA를 사용하려면 먼저 종속성을 추가해 주어야 한다.

 

여기서 잠깐, JPA란?

> JPA는 "Java Persistence API"의 약자로, Java에서 데이터베이스를 관리하는 표준 인터페이스를 제공하는 API입니다. JPA는 객체와 관계형 데이터베이스 간의 매핑을 처리하고, 객체 지향 프로그래밍(OOP) 언어인 Java와 관계형 데이터베이스 간의 상호 작용을 간소화하는 목적으로 만들어졌습니다.

= 즉, db의 데이터를 가져올 수 있도록 하는 매개체 역할이다.

= 자바의 객체와, 데이터베이스 간의 데이터를 매칭해준다.

 

  • build.gradle 파일에 들어가서 dependencies 부분에 아래와 같이 코드를 추가해준다.

원래는 spring_web이랑 test 밖에 없었으나, 가운데 두 종속성을 추가해주었다.

위는 jpa, 아래는 mysql에 대한 종속성이다.

 

 

💡 MYSQL 연동을 위한 정보를 가진 yml 파일 생성하기

 

yml 파일은 애플리케이션의 설정 정보를 가진다.

resource 디렉토리 하에 application.yml 파일을 생성하고 데이터베이스 연결 정보를 추가해준다.

# database 연동 설정
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    #    각자 PC에 만들어놓은 Database이름을 써야 합니다.
    url: jdbc:mysql://localhost:3306/cloud_vendor?serverTimezone=Asia/Seoul&characterEncoding=UTF-8
    #    mysql에 생성한 사용자 계정 정보를 써야 합니다.
    username: 자신의 db username
    password: 자신의 db pw
  thymeleaf:
    cache: false

  # spring data jpa 설정
  jpa:
    database-platform: org.hibernate.dialect.MySQL5InnoDBDialect
    open-in-view: false
    show-sql: true
    hibernate:
      ddl-auto: create //초기 설정 시 create로 하고 나중에 db가 완전해지면, update로 바꿔서 사용
#      use-new-id-generator-mappings: false

 

위는 yml에 들어가는 코드이다.

  • datesource의 url에서 cloud_vendor는 이 프로젝트에서 사용하는 db 이름이고, 내 db에 미리 만들어져 있어야 한다.
  • 아래 username과 password는 자신의 db에 맞게 넣어주면 된다.
  • 아래 jpa에서 ddl-auto는 create로 두면 entity로 둔 table이 생성되고, update로 되면 변경사항만 변경된다.
  • 초기에는 보통 create로 둔다.

 

💡 application controller 정상 실행되는지 확인하기

 

build.gradle을 수정하고 난 뒤에는 코끼리 모양을 눌러 다시 build해주어야 변경 사항이 적용된다.

yml 파일을 추가했으므로, 한번 application controller를 실행해 보아서 문제가 없는지 확인한다.

문제가 없다면 잘 진행된 것!

 

다음 회차↓↓↓

2023.11.13 - [Web Application/Backend] - [REST API] Spring Boot로 REST API CRUD 간단 구현 (3)

 

[REST API] Spring Boot로 REST API CRUD 간단 구현 (3)

DB연동에 이어서, db에 있는 정보를 CRUD 처리해보자. 💡 Model을 entity로 설정 model인 CloudVendor를 entity로써 하나의 테이블로 선언해주기 위해, CloudVendor 클래스를 수정해준다. CloudVendor를 Entity로 선언

im-gonna.tistory.com

  

반응형

+ Recent posts