티스토리 뷰

반응형

mustache를 통해 화면을 그릴 수 있고, 요청을 정상적으로 처리한다는 것을 확인했으니 DB와 연결을 테스트 해보겠습니다.

JPA는 처음이라 다른 블로그 참고하여 따라 하기 식으로 설정을 했습니다.

좀 더 공부하면서 세부 설정 등 변경해 볼 예정입니다.

 

우선 model에 TestModel, TestModelRepository를 추가했습니다.

그리고 TestService를 추가하여 Controller가 호출하고 CRUD를 할 수 있게 했습니다.

 

값을 확인하기 위해 간단한 mustache 파일도 생성했습니다.

 

 

 

 

 

 

 

 

우선 application.yml에 설정을 추가합니다.

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test_schema?serverTimezone=Asia/Seoul
    username: root
    password: 1q2w3e4r!
    driver-class-name: com.mysql.cj.jdbc.Driver
  jpa:
    show-sql: true
    hibernate.ddl-auto: update
    properties.hibernate.format_sql: true

TestModel의 값을 확인하기 위한 mustache 파일을 생성해 줍니다.

no : {{testModel.no}}
<br>
name : {{testModel.name}}

그 후 TestModel 객체를 만들어 줍니다. lombok은 처음이라 어색하네요.. 익숙해지면 꽤 편할 것 같습니다.

 

 

 

JPA를 이용하려면 인터페이스를 생성하면 된다고 해서 인터페이스를 생성했습니다.

package jellyinghead.board.test.model;

import org.springframework.data.jpa.repository.JpaRepository;

public interface TestModelRepository extends JpaRepository<TestModel, Integer> {
}

 

이제 요청을 받아서 작업을 하기 위해 컨트롤러에 CRUD 메소드를 각각 추가해 줍니다.

REST API라고 해서 url을 만드는 규칙..?이 따로 정해져 있는데요. 제가 만든 방법은 권장하는 방법은 아닙니다.

가독성을 위해 작성해봤는데, 한번 찾아보는 것을 권장드립니다.

 

CRUD 작업을 하기 위한 메소드를 생성합니다.

CREATE : name = "jpa test ----" 데이터 추가

READ : no = 1 데이터 읽기

UPDATE : no = 1 데이터의 name = update name으로 변경

DELETE : no = 2 데이터 삭제

 

호출을 해보겠습니다. postman을 이용했습니다.

DB 초기값

CREATE : no = 5 데이터가 추가되었습니다.(no = 4는 제 실수로 삽입됐네요.)

READ

UPDATE

DELETE

 

JPA까지 붙여서 CRUD 기능 테스트를 진행했습니다.

MyBatis만 이용해보다가 처음 사용해 보는데 신기하고 간편한 것 같습니다.

 

참고 

https://dev-coco.tistory.com/85

 

[Spring Boot] MySQL & JPA 연동 및 테스트 (Gradle 프로젝트)

SpringBoot에서 MySQL 그리고 Spring Data JPA를 연동하는 방법에 대해 알아보도록 하겠습니다. 1. 프로젝트에 의존성 추가하기 build.gradle에 의존성을 아래와 같이 추가해줍니다. dependencies { implementatio..

dev-coco.tistory.com

반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함