2017-12-13 11 views
3

클래스에 @AllArgsConstructor 주석을 사용하고 있으며 인수가 null이 아니 었으면합니다. 이것을 가능하게하기 위해이 주석을 수정하는 방법이 있습니까, 아니면 constractor를 구현해야합니까? 감사@AllArgsConstructor (lombok)의 모든 매개 변수에 'not null'을 설정하는 방법이 있습니까

@Getter 
@Setter 
@ToString 
@AllArgsConstructor 
public class Contact { 

    private String name; 
    private String phoneNumber; 

} 

...

<lombok.version>1.16.18</lombok.version> 

답변

2

예, 당신은 필드에 @ NonNull를 사용해야합니다, 그것은 생성 된 생성자에 NULL 체크가 발생합니다.

+0

감사합니다. 한 가지 질문 : 두 필드 모두 @NotNull로 주석을 달았습니다. 이처럼 생성하고 객체 할 때 Contact rob = new Contact (null, null); NullPointerException이 발생합니다. 하지만이 객체를 만들 때 Contact bill = new Contact ("Bill", null); (phoneNumber = null 만 사용) 괜찮습니다. 예외 없음 . 왜? – IKo

+0

@IKo 올바른 주석을 가지고 있습니까? 롬 복 주석은'@NoNull'이며'@ NotNull'이 아닙니다. –

+0

@ MichaelA.Schaffrath 당신 말이 맞습니다. 내가 실수로'@ NotNull'을 넣은 필드 중 하나에 대해 고마워요! – IKo