코드숨 스프링 5주차 회고

종명·2021년 3월 1일
0
post-thumbnail

한 일

  • 5주차 과제 수행 - 고양이 장난감가게 유효성 추가하기, 회원 관리 만들기 (5주차 코드 리뷰)
  • 알고리즘 문제 풀이 (완전 탐색)

배운 점 & 느낀 점

1. DozerMapper

  • DozerMapper를 이용해 객체간의 변환에 대해서 학습하였다.
  • Dozer란 한 객체에서 다른 객체로 데이터를 재귀적으로 복사하는 Java Bean to Java Bean 매퍼이다. (참고)
Mapper mapper = DozerBeanMapperBuilder.buildDefault();

DestinationClassName destObject = mapper.map(sourceObject, DestinationClassName.class);

2. Validation

  • 유효성 검증을 위해 spring-boot-starter-validation 의존성을 추가하고 @Length, @NotBlank, @NotNull 등을 이용해 보았다.
  • @NotNull : null만 허용하지 않고 "", "    "은 허용한다.
  • @NotEmpty : null, "" 를 허용하지 않는다. (@NotNull + "")
  • @NotBlank : null, "", " " 모두 허용하지 않는다. (@NotEmpty + "     ")

3. DTO

  • 테이블과 매핑되는 Entity클래스는 가장 Core한 클래스로 절대로 Request/Response 클래스로 사용하면 안된다.
  • 대부분의 비즈니스 로직들이 Entity클래스를 기준으로 동작하는데 Entity클래스가 변경되면 여러 클래스에 영향을 끼치게 된다.
  • 그래서 Request, Response를 위한 DTO를 만들어 사용하는 것이 좋다. (View Layer와 DB Layer를 철저하게 분리해야 한다.)

4. 어떤 레이어에서 예외처리를 할 것인가? (참고)

5. 비슷한 모양의 단어들 사용하지 말기!

자기 선언

  • 이번주에는 과제 그 이상의 공부를 하지 못한 것 같아 아쉬웠다. 다음주에는 조금 더 적극적으로 과제를 수행해야겠다.
  • 저번주에 주간회고때 작성한 자기 선언들을 지키지 못한 것 같다. 하루하루 집중하지 못한 날들이 많았고 목표에 반도 못한 날들도 있었다. 다음주에는 불필요한 것들에 신경끄고 꼭 필요한 것에만 집중해야겠다.

0개의 댓글