데이터를 전달하기 위해 사용되는 객체

  • 만약에 회원정보 수정이라고 하면, DTO가 앞단에서 이루어지고 서비스로 넘어갈때 변환이 이루어짐
    • DTO Entity (controller service)
    • Entity DTO (service controller)
  • DTO는 보편적으로 Controller에서만 쓰임
  • 로그인같은 요청은 JSON을 보내는게 일방적임

MemberpostDTO

  • it’s a POJO
  • setter가 없으므로 불변임, 한번 데이터가 들어오면 변경할 수 없음 (변경못함)
    • DTO 클래스는 최대한 불변을 유지하는게 원칙임
    • 아주아주 가끔 setter이 필요한 경우도 있긴ㄴ함
  • starter dependency web
    • 내부에 jackson이 있는데, json을 java의 객체로 바꿔주는걸 자동으로함

  • 이 annotation이 자동으로 수행됨

  • 여기에는 @RequestBody

  • postman 사용해서 테스트할 수 있음

여기도

  • 이렇게 entity로 변경시켜줘야함

Make also MemberResponseDTO

  • MemberPostRecordDto
    • 전체 생성자가 자동으로 만들어짐
    • getter자동으로 있는데 setter은 없음
    • 필드는 public final임
    • 이걸 써도 괜찮음
    • 강사님은 그냥 DTO를 사용하긴 하는데 레코드는 편리해서 많이 사용됨
    • 얘도 불변임

==========

  • @RequiredArgsConstructor

================