[JAVA]롬복(Lombok)

신동혁·2022년 8월 12일
0

JAVA

목록 보기
11/16

롬복( Lombok )

1.Getter

필드를 불러올 수 있는 'get필드명'메서드들을 필드마다 만든다. 'get필드명'메서드의 접근제한자는 기본적으로 public이다.

// 1.모든 필드에 대한 get메서드 만들기
@Getter
public class 클래스명(){
    클래스내용
}

// 2.특정 필드(empno)에 대한 get메서드 만들기
public class 클래스명(){
    @Getter
    private int empno;
}

// 3.특정 필드(empno)에 대한 get메서드를 private로 설정해 만들기
public class 클래스명(){
    @Getter(AccesLevel.PRIVATE)
    private int empno;
}

2.Setter

필드를 수정할 수 있는 'set필드명'메서드들을 필드마다 만든다. 'set필드명'메서드의 접근제한자는 기본적으로 public이다.

// 1.모든 필드에 대한 set메서드 만들기
@Setter
public class 클래스명(){
    클래스내용
}

// 2.특정 필드(empno)에 대한 set메서드 만들기
public class 클래스명(){
    @Setter
    private int empno;
}

// 3.특정 필드(empno)에 대한 set메서드를 private로 설정해 만들기
public class 클래스명(){
    @Setter(AccesLevel.PRIVATE)
    private int empno;
}

3.Data

여러 어노테이션의 기능을 합쳐놓은 어노테이션이다.
--> @Getter + @Setter + @ToString + @EqualsAndHashCode + @RequiredArgsConstructor

@Data
public class 클래스명(){
    클래스내용
}

4.Constructor

4.1 NoArgsConstructor

파라미터가 없는 생성자를 만든다.

@NoArgsConstructor
public class 클래스명(){
    클래스 내용
}

4.2 RequiredArgsConstructor

초기화되지 않은 final 필드, @NonNull로 설정된 모든 필드들에 대한 생성자를 만든다.

@RequiredArgsConstructor
public class 클래스명(){
    클래스 내용
}

4.3 AllArgsConstructor

해당 클래스의 모든 필드를 파라미터로 받는 생성자를 만든다.

@AllArgsConstructor
public class 클래스명(){
    클래스 내용
}

5. NonNull

변수에 적용하는 어노테이션으로 null check을 자동으로 해준다. 즉, 변수가 null이 되지 않게끔 도와준다.

// 1.필드를 NonNull로 설정하기( 해당 필드를 이용하는 메서드에서도 NonNull 적용됨 )
@NonNull
private int empno;

// 2.생성자 파라미터를 NonNull로 설정하기
public 클래스명(@NonNull int empno){}

1번 경우 empno가 null이 되면 NullPointerException 예외가 발생하게 된다. 또한 다른 어노테이션(Data같은)을 이용해 클래스의 생성자를 만들어 놓았을 때, 해당 생성자의 파라미터로 들어간 empno 또한 NonNull이 적용되어 무조건 파라미터값으로 null이 아닌 값을 넣어줘야 한다. 하지만 직접 타이핑을 통해 생성자를 만들어 놓고, 이때 파라미터에 NonNull어노테이션 없이 그냥 empno를 받는다고 작성했으면 해당 생성자의 파라미터값 empno는 NonNull이 적용되지 않는다.

profile
개발취준생

0개의 댓글