코딩공작소

Springboot3 실습 (2) - 기본 CRUD REST API 개발 본문

어플리케이션개발/springboot실습

Springboot3 실습 (2) - 기본 CRUD REST API 개발

안잡아모찌 2024. 3. 27. 19:21

RestAPI 를 통한 블로그 API 

필요한 그레이들 의존성 주입

 


엔티티 생성

빌더 패턴을 사용하면 객체를 유연하고 직관적으로 생성할 수 있기 때문에 개발자들이 애용하는 디자인 패턴입니다.
또한, 객체 생성 코드의 가독성을 높이며 간편하게 빌더 패턴을 사용해 객체를 만들 수 있다.

또한, 롬복의 애너테이션을 통해 반복된 코드를 줄여 가독성을 향상시킬 수 있다.

 

 

DTO 생성

DTO는 단순히 계층끼리의 데이터 교환을 위해 사용되는 객체다.

별도의 비즈니스 로직을 포함하지 않는다. toEntity()를 통해 DTO를 엔티티로 만들어준다.

 

 


서비스에 저장 로직 개발

request 값을 엔티티로 만들어서 리포지토리의 저장 로직을 호출한다.

@RequiredArgsConstructor는 빈을 생성자로 생성하는 롬복에서 지원하는 애너테이션으로, final 키워드나 @NotNull이 붙은 필드로 생성자를 만들어 준다.

 

 

 

 

 

H2 데이터 베이스 사용하기

그레이들 설정 파일에 datasource와 h2설정 값을 세팅해준다. spring설정 값 바로 아래 레벨이다.

 

포스트맨으로 해당 저장 API를 호출한다.

 

 

h2 데이터베이스에서 저장된 데이터가 잘 확인되는 것을 볼 수 있다.

 

 

테스트 코드 작성하기

 

 

 

 


블로그 글 목록 조회 API

JPA를 사용하면 findAll()함수는 기본 함수다.

 

 

 

 

 

 

테스트 코드 작성

 

 


블로그 글 단건 조회 API 구현

서비스 단
컨트롤러 단

 

 

테스트코드

 

 


블로그 글 삭제 API

 

 

포스트맨 검증

삭제 호출을 먼저 해보고
목록조회를 하면 데이터가 삭제되어 있다.

 

테스트코드

 


블로그 글 수정 API

엔티티에 값 변경 함수를 써준다.

 

서비스단에 로직을 개발하고 트랜잭션으로 묶어서 제대로 된 수정을 보장한다.

 

 

putmapping 수정 호출을 통해 값을 수정해준다.
목록 조회를 했을 때, 내용이 수정된 것을 확인할 수 있다.

 

 

테스트 코드