티스토리 뷰
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을 이용했습니다.
CREATE : no = 5 데이터가 추가되었습니다.(no = 4는 제 실수로 삽입됐네요.)
READ
UPDATE
DELETE
JPA까지 붙여서 CRUD 기능 테스트를 진행했습니다.
MyBatis만 이용해보다가 처음 사용해 보는데 신기하고 간편한 것 같습니다.
참고
'웹 - Legacy > Spring' 카테고리의 다른 글
Spring Boot로 게시판 만들기 (게시물 생성, 조회) (2) | 2022.11.27 |
---|---|
Spring Boot로 게시판 만들기 (테이블 설계) (2) | 2022.11.22 |
Spring Boot로 게시판 만들기 (mustache) (0) | 2022.07.01 |
[Error] Error creating bean with name 'dataSourceScriptDatabaseInitializer' 해결 (0) | 2022.07.01 |
Spring Boot로 게시판 만들기 (Spring Initializer) (0) | 2022.06.21 |