개발자/workflow 리팩토링 프로젝트(SpringBoot,JPA,MySQL)
[JPA] Lombok 어노테이션(@Data,)
GoGo개발
2023. 5. 2. 17:01
@Data
@Data = @toString + @getter + @setter + @RequiredArgsConstructor + @EqualsAndHashCode@toString - toString() 메서드를 생성한다.
- @ToString
toString() 메소드를 생성한다. @ToString(exclude={“제외값”})으로 제외시키고 싶은 값을 설정할 수 있다. - @Getter , @Setter
getter() setter() 메소드를 생성한다. - @EqualsAndHashCode
equals(), hashCode() 메소드를 생성한다. - @RequiredArgsConstructor
모든 멤버 변수를 초기화시키는 생성자를 생성한다. 초기화 되지 않은 모든 final 필드,@NonNull과 같이 제약조건이 설정되어있는 모든 필드들에 대한 생성자를 자동으로 생성한다. - @Data
위에 언급한 5가지 어노테이션 설정을 모두 포함한다.
lombok 생성자
@NorgsConstructor : 파라미터가 없는 기본 생성자 생성
@AllArgsConstructor : 모든 필드 값을 파라미터로 받는 생성자를 만들어 준다.
@RequiredArgsConstructor : final이나 @NonNull 인 필드 값만 파라미터로 받는 생성자를 만들어 준다.