JAVA/코딩자율학습-스프링부트

[코딩 자율학습 스프링부트] 12장 서비스 계층과 트랜잭션

우준세 2024. 12. 9. 21:00
728x90
반응형

| 서비스

컨트롤러와 리퍼지터리 사이에 위치하는 계층
서버의 핵심 기능을 처리하는 순서를 총괄합니다.

| 트랜잭션

모두 성공해야 하는 일련의 과정

쪼갤 수 없는 업무 처리의 최소 단위 

 

| 서비스 계층 구현 

ArticleService 클래스를 만들어 서비스 계층 구현

@Service 어노테이션을 사용해 해당 클래스를 서비스로 인식해 객체를 생성

| 게시글 조회 요청 개선

앞서 만들었던 findAll()로 return 했던 메서드를 articleService.index() 메서드를 사용해

모든 게시글을 조회하는 기능을 만들었습니다.

 

결과)

 

 

| 게시글 생성 요청 개선

articleService.create()를 호출해

POST 요청 메시지에 담긴 데이터를 전달합니다.

 

삼항 연산자를 사용해 return 문을 수정했습니다

 

return (created != null) ? good : bad;

 

created가 null이 아니라는 조건이 true면 good, false면 bad로 조건에 따라 실행됩니다.

create() 메서드의 return을 ResponseEntity<Article>로 수정했으며 

ArticleService에 create 메서드를 만들어 DB에 저장했습니다.

 

결과)

 

| 게시글 수정 요청 개선

기존 만들었던 update() 메서드를 개선했습니다.

DTO를 Entity로 변환하여 타깃을 조회했고 

에러 처리를 추가하여 업데이트하는 코드로 변경했습니다.

 

결과)

 


728x90
반응형