본문 바로가기

편안한코딩생활/기타등등

@Builder 패턴이 뭔데?

롬복에 있는 어노테이션 중 @Builder가 있다

우리가 객체를 이용해서 값을 세팅할때. id 같은 경우 내가 직접 입력하지 않고 시퀀스 등을 통해서 증가 시키려면

그 id만 비우고 다른 값을 세팅하기 위해서 생성자를 새로 만들어야 한다

하지만

이렇게 생성자에 Builder를 달아주면?

member(1,"123","user") 이런식으로 값을 바로 세팅하지 않고

.builder()를 붙인 후 원하는 값을 계속 붙이고 .build로 마무리해준다.

 

builder패턴 사용시 장점

  1. 필드에 들어가는 값 순서 안지켜도 됨(원래는 vo 보면서 String인지, 순서는 뭔지 확인해야하니까 오류가 잘 남)
  2. 원하는 값만 골라 넣을 수 있음(생성자 안만들어도!)