23.02.10

Kuno17·2023년 2월 10일
0

TIL/WIL

목록 보기
18/38
post-thumbnail

Study

@RequestBody vs @ModelAttribute 차이점

  • 공통점 : 둘다 클라이언트 측에서 보낸 데이터를 Java 코드에서 사용할 수 있는 오브젝트로 만들어줌.
  • @RequestBody : Http Body의 Json 형식을 받아들임.
  • @ModelAttribute : Http Body의 multipart/form-data 형식과 query string 형식을 받아들임.

@Setter 를 Entity에서 사용을 지양하는 이유??

@Setter는 사용의도/목적이 분명하지 않다. ->무슨말?

간단하게는 의도가 update를 하려는건지 create를 하려는 것인지 의도가 코드상에서 쉽게 보이지 않는다.이는 안전성을 보장하지 않게된다는 우려가 있다.

그렇다면 어떻게 update를 할 수 있을까?

private int number;

public void updateNumber(int number){
		this.number = number;
        }

와 같이 의미가 들어가 있는 메ㅔ소드 네임으로 수정해서 사용한다면 어떤 의도의 접근인지 확인이 가능하다.

@uilder 패턴의 사용권장

builder패턴 사용 시 장점

  1. 가독성을 높일 수 있다.
  2. 필요한 데이터만 build할 수 있다.
Memberf. member = new Member( String username, String emnail , String password)

builder 패턴을 적용 하면

Member member = member
		.username()
        .email()
        .password()
        .build();

변수명을 보고 어떤 데이터인지 확인하기가 쉬워진다. -> 가독성이 높아진다.

profile
자바 스터디 정리 - 하단 홈 버튼 참조.

0개의 댓글