본문 바로가기

전체 글168

패스트캠퍼스 챌린지 31일차 Part 1. Spring Framework Ch 04. 예외처리 01. 예외처리를 활용한 서비스 로직 리팩토링_01 - 문제점 Controller 의 역할 : Presentation layer 응답을 잘받고 요청에 대한 반응을 전달 클래스에 역할에 따라 메소드를 잘 분류하지 않으면, 클래스의 용도가 불분명해져서 유지보수성이 낮아진다. * 좋지 않은 코드 (DeveloperValidationDto Class와 validateCreateDeveloperRequest Method에 집중) . . . public DeveloperValidationDto validateCreateDeveloperRequest(CreateDeveloper.Request request) { DeveloperValidationDto.. 2022. 2. 23.
패스트캠퍼스 챌린지 30일차 Part 1. Spring Framework Ch 04. 예외처리 01. 예외처리를 제대로 안했을 때의 문제점_01 - 반복적이고 불필요한 예외를 방지하기 위해 exception을 각 컨트롤러에서 처리하는게 아닌, GlobalExceptionController라는 새로운 예외처리컨트롤러를 생성하여 일괄 처리 package com.fastcampus.programmin.dmaker.exception; import com.fastcampus.programmin.dmaker.dto.DMakerErrorResponse; import lombok.extern.slf4j.Slf4j; import org.springframework.web.HttpRequestMethodNotSupportedException; imp.. 2022. 2. 22.
패스트캠퍼스 챌린지 29일차 Part 1. Spring Framework Ch 04. 예외처리 01. 글로벌 예외처리 기법_01 - 내부적인 오류를 처리할 때는 한번에 직관적으로 처리하는게 좋음 . . . @DeleteMapping("/developer/{memberId}") public DeveloperDetailDto deleteDeveloper( @PathVariable String memberId ) { return dMakerService.deleteDeveloper(memberId); } @ResponseStatus(value = HttpStatus.CONFLICT) @ExceptionHandler(DMakerException.class) public DMakerErrorResponse handleException(DMa.. 2022. 2. 21.
패스트캠퍼스 챌린지 28일차 Part 1. Spring Framework Ch 03. 예제를 만들며 이해하는 스프링 웹 어플리케이션 핵심 기술 12. Developer Delete(삭제), 트랜잭션 실무 개발 package com.fastcampus.programmin.dmaker.service; import com.fastcampus.programmin.dmaker.Repository.DeveloperRepository; import com.fastcampus.programmin.dmaker.Repository.RetiredDeveloperRepository; import com.fastcampus.programmin.dmaker.code.StatusCode; import com.fastcampus.programmin.dmaker.. 2022. 2. 20.
패스트캠퍼스 챌린지 27일차 Part 1. Spring Framework Ch 03. 예제를 만들며 이해하는 스프링 웹 어플리케이션 핵심 기술 12. Developer Put(수정)기능 개발 package com.fastcampus.programmin.dmaker.controller; import com.fastcampus.programmin.dmaker.dto.CreateDeveloper; import com.fastcampus.programmin.dmaker.dto.DeveloperDetailDto; import com.fastcampus.programmin.dmaker.dto.EditDeveloper; import com.fastcampus.programmin.dmaker.service.dMakerService; import .. 2022. 2. 19.
패스트캠퍼스 챌린지 26일차 Part 1. Spring Framework Ch 03. 예제를 만들며 이해하는 스프링 웹 어플리케이션 핵심 기술 11. Developer Get(조회)기능 개발 - CRUD의 다른 기능 : get, delete 등을 수행 package com.fastcampus.programmin.dmaker.dto; import com.fastcampus.programmin.dmaker.entity.Developer; import com.fastcampus.programmin.dmaker.type.DeveloperLevel; import com.fastcampus.programmin.dmaker.type.DeveloperSkillType; import lombok.*; import org.springframework.. 2022. 2. 18.