-스프링부트 프로젝트를 보다가 같은 프로젝트 내에서 model객체의 기본 셋팅이 모두 달랐다.
1. getter,setter,생성자까지 모두 수동으로 만든사람
2. @Getter @Setter만 만들고 생성자는 직접만든사람
3. @Data를 이용한 사람
뭔가 통일하고 싶은 마음에 정확한 어노테이션의 사용법을 알아본다.
@Getter, @Setter - 필드 단위, 클래스 단위 모두 가능.
@NoArgsConstructor - 파라미터가 없는 생성자 생성. @NotNull 선언 필드 생성x
@RequiredArgsConstructor - 필수인자
@AllArgsConstructor - 모든 필드 값을 파라미터로 받는 생성자 생성. @NonNull 선언시 Null 검사함.
@ToString - toString()메소드 생성
@EqualsAndHashCode - equal(), hashCode() 메소드 생성.
@Data - Getter + Setter + RequiredArgsConstructor + ToString + EqualsAndHashCode 모두 적용됨
참고자료
'IT' 카테고리의 다른 글
JAVA line:0 Internal compiler error: Classcast exception(feat, 이클립스, 롬복 호환성) (0) | 2020.09.02 |
---|---|
단축평가(short-circuit) (0) | 2020.07.07 |
v-if vs v-show (0) | 2020.06.19 |
[디자인패턴]단일 책임 원칙(Single Responsibility Principle) (0) | 2020.04.27 |
[springBoot] web Access LocalHost는 되는데, 127.0.0.1은 안 됨 (0) | 2020.04.20 |