프로그래밍/Spring Boot
[Spring] Lombok Annotation에서의 Data
연유뿌린빙수
2024. 11. 4. 21:33
@Data
@Data 는 Lombok에서 여러 기능을 내포한 어노테이션이라고 생각하면 된다.
다음과 같은 기능들을 구현한다.
@ToString
: toString() 메소드를 자동으로 생성해준다.
객체를 문자열 형태로 반환해주는 메소드이다.
- 어노테이션을 사용하지 않을 때
public class Example {
private String name;
private int age;
private String email;
// Constructor, getters, and setters
@Override
public String toString() {
return "Example{" +
"name='" + name + '\'' +
", age=" + age +
", email='" + email + '\'' +
'}';
}
}
- 어노테이션을 사용했을 때
import lombok.ToString;
@ToString
public class Example {
private String name;
private int age;
// Getters, setters, constructors 등
}
@EqualsAndHashCode
: equals() 메소드, hashCode() 메소드 자동으로 오버라이딩하여 생성해주는 어노테이션
둘 다 객체의 내용이 동등한지에 대하여 비교를 하기 위한 연산자이다
equals -> 객체의 내용이 동일한지 내용만 떼어와 비교
hashCode -> 객체가 동일한 객체인지를 비교
@Getter
: Get 메소드 자동으로 생성해준다.
필요한 필드의 정보값을 가져온다
@Setter
: Setter 수정자 메소드를 자동으로 생성해준다.
필요한 필드의 값 수정을 원활하게 해준다.
@RequiredArgsConstructor
: 필요한 생성자에 대하여 자동으로 생성해주는 어노테이션이다.
위의 기능들을 Data Annotation을 통하여 구현이 가능하기 때문에 자주 사용한다
REF
https://projectlombok.org/features/Data