본문 바로가기
Spring & Spring Boot

Spring & Spring Boot - @Accessors

by 지민재 2024. 5. 9.
반응형
SMALL

@Accessors

@Accessors(chain = true)는 Lombok 라이브러리에서 제공하는 애노테이션이다. 이 애노테이션은 자동으로 생성된 Getter 및 Setter 메소드의 동작을 변경하는 데 사용된다.

기본적으로 Lombok은 @Getter 및 @Setter 애노테이션을 사용하여 필드의 Getter 및 Setter 메소드를 생성한다. 그러나 @Accessors(chain = true)를 사용하면 체인 형식의 호출을 지원하는 메소드들을 생성한다. 이것은 객체의 메소드 호출을 연결하여 단일 표현으로 나타낼 수 있게 해준다

예를 들어, 다음과 같은 클래스가 있다고 가정해보자

import lombok.Getter;
import lombok.Setter;
import lombok.AccessLevel;
import lombok.experimental.Accessors;

@Accessors(chain = true)
public class MyClass {
    @Getter @Setter private String name;
    @Getter @Setter private int age;
}

그러면 다음과 같이 객체를 생성하고 메소드를 체인 형태로 호출할 수 있다.

MyClass obj = new MyClass();
obj.setName("John").setAge(25);

위의 예제에서 @Accessors(chain = true) 애노테이션이 적용된 클래스는 setName() setAge() 메소드를 호출한 후에도 동일한 객체에 대한 참조를 반환하여 다른 메소드 호출을 연속적으로 할 수 있게 한다.

댓글