본문 바로가기

분류 전체보기102

@EqualsAndHashCode에 대한 정리 @Data를 탐험하다가 @EqualsAndHashCode를 확인했다. Data Annotaion을 확인해보자. See Also를 참고해보면 Getter, Setter, RequiredArgsConstructor은 익숙하니 넘어가고 이번에는 @EqualsAndHashCode을 확인해보고 싶다. https://projectlombok.org/features/EqualsAndHashCode @EqualsAndHashCode projectlombok.org 정말 영어는 언제나 어렵고 제일 위의 설명을 참고하면 Objects를 상속한 fields에 한하여 equals and hashCode methods를 전부 implementation을 진행하겠다는것인데... 우리가 선언하는 아이들은 기본적으로 object가 .. 2023. 9. 21.
@RequsestBody와 Setter DTO에서 Setter을 사용하는 부분에 대해서 확인 중에 신기한 부분을 발견해서 정리해본다. https://jojoldu.tistory.com/407 @Request Body에서는 Setter가 필요없다? 회사에서 근무하던중 새로오신 신입 개발자분이 저에게 하나의 질문을 했습니다. POST 요청시에 Setter가 필요없는것 같다고. 여태 제가 알던것과는 달라서 어떻게 된 일인지 궁금했습니다. 정말 P jojoldu.tistory.com @RequestBody는 Setter가 필요없다? 주로 RequestBody로 받는 파라미터는 @Data와 함께 사용한다. 근데 Setter가 필요 없다? 몇가지 실험을 해보자 1. 조합 : RequestBody, Data @ResponseBody @PostMapping.. 2023. 9. 18.
DTO에서 @Setter쓰는 것에 대한 주저리[1] JPA를 사용하다 보면 @Setter을 사용하고자 하면 조심해야한다의 상황은 익숙하다. 하지만 우리는 비즈니스 로직에서 주로 사용하는 @Data 어노테이션은 @Setter을 내제하고 있다. https://projectlombok.org/features/Data @Data projectlombok.org https://www.inflearn.com/questions/161417/dto-%EC%82%AC%EC%9A%A9%EC%97%90%EB%8C%80%ED%95%B4-%EA%B6%81%EA%B8%88%ED%95%A9%EB%8B%88%EB%8B%A4 DTO 사용에대해 궁금합니다. - 인프런 | 질문 & 답변 안녕하세요 영한님.항상 좋은강의 보면서 이미 완강을 하였지만 궁금한점이 이 강의내용에 해당되는것 같아 .. 2023. 9. 17.
@Transactional에 대한 정리[번외] - RuntimeException와 Errorcode 애플리케이션을 개발할때 CustomException을 제작해서 따로 ErrorCode 정의 후 Exception을 떤져준다. @Transactional을 떤져서 rollback을 의도한다. 그럼 Exception과 어떻게 구성할지 조금 더 확인해보자 흔히 아는 UncheckedException(RuntimeException)과 CheckedException이 존재한다. 둘의 차이점은? 나의 본 목적은 CustomException을 제작하여 나의 Exception을 떤지면서 rollback을 진행하고 싶다. 그러면 우선 내가 만드는 CustomExcpetion은 RuntimeExcpetion을 extends하자 그럼 요기서 잠깐 CheckedException은 왜 롤백을 진행하지 않는가? 기본적으로 che.. 2023. 9. 11.
@Transactional에 대한 정리[4] - rollbackFor(Class)에 관하여 @Transactional은 UncheckedException에 대해서 rollback이 이뤄진다. 하지만 CheckedException 또한 Exception이자면 exception인데... 모든 Exception에 대해서 처리하고 싶으면 어떻게 진행해야 하늗가? @Transactional(rollbackFor = Exception.class)으로 진행한다. checked, uncehcek 둘의 부모 클래스는 결국 Exception.class이기에 @Transcational(rollbackFor = Excpetion.class)으로 보든 exception에 rollback을 진행한다. 앞서 Transaction이 진행되는 상황에서 TransactionAspectSupprt가 call 되는 상황임을 알 .. 2023. 9. 11.
@Transactional에 대한 정리[3] - rollback()에 관하여 보오오오통 @Transactional의 rollback이 UncheckedException에 반응한다는 부분은 모두가 아는 사실이다. 그럼 rollback()은 어떻게 진행되는가? @Transactional에서 rollback()이 어떻게 동작하는가? @Transactional의 docs를 따라가보면 TransactionAttribute, DefaultTransactionAttribute, RuleBasedTransactionAttribute를 확인할 수 있다. TransactionAttribute (TranscationalDefinition) https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/trans.. 2023. 9. 11.