프로젝트명: DMakergithub 링크 snow-in-summer/dmaker POST 메서드를 활용하여 개발자를 생성합니다.validation에 대해서도 배우게 됩니다.GET 메서드를 활용하여 개발자(들)의 정보를 확인합니다.DTO(Data Transfer Ob
@RestController = @Controller, @ResponseBody @Controller : @Component의 타입 중 하나 @ResponseBody : 사용자의 요청을 받아 json으로 응답을 해줌 ![](https://velog.velcdn.c
원자성(Atomicity)은 트랜잭션과 관련된 작업들이 부분적으로 실행되다가 중단되지 않는 것을 보장하는 능력이다. 예를 들어, 자금 이체는 성공할 수도 실패할 수도 있지만 보내는 쪽에서 돈을 빼 오는 작업만 성공하고 받는 쪽에 돈을 넣는 작업을 실패해서는 안된다. 원
데이터 벨리데이션 적용 CreateDeveloper 생성 -> request, response로 데이터 나눔 , , , 등 데이터 벨리데이션 적용 Controller 수정 를 앞에 붙여줘야 validation 적용이 됨 log로 request정보를 알아보기 위
조회 기능 구현 Controller에 getAllDevelopers 추가 DeveloperDto 생성 이기 때문에 orElseThrow를 이용해서 값이 없을 때 Exception으로 NO_DEVELOPER을 던진다. ![](https://velog.velcdn.
개발자 정보 수정하기 Controller에 editDeveloper 함수 생성 EditDeveloper 클래스 생성 validateCreateRequest와 동일한 부분은 따로 메서드를 만들어줌
RetiredDeveloper entity를 따로 생성하기퇴직한 개발자의 정보 따로 저장memberId와 이름, 퇴직한 날짜와 정보를 수정한 날짜를 저장해준다.Developer Entity에 StatusCode를 추가한다.개발자가 고용상태인지, 퇴직 상태인지 상태 코드
controller가 하나인 경우 controller에서 ExceptionHandler 추가 DMakerErrorResponse 클래스 생성 테스트 Response의 상태코드 200을 변경하고 싶을 때 어노테이션 붙여줌 상태코드가 409 Conflict로 변경
JUnit JUnit은 자바용 단위 테스트 작성을 위한 산업 표준 프레임워크이다. 테스트 구현 Spring Boot Starter 라이브러리를 dependency로 추가 테스트 클래스 생성 - DMakerServiceTest (단축키 : Ctrl + Shift + T
리팩토링이란 외부 동작을 바꾸지 않으면서 내부 구조를 개선하는 방법이다. 코드가 작성된 후에 디자인을 개선하는 작업이다. 모든 것을 미리 생각하기보다는 개발을 하면서 지속적으로 좋은 디자인을 찾는다. 메소드 내의 지역변수와 parameter를 주의 깊게 볼 필요가 있다