반응형
자바에서 Dto 생성시 Builder를 자주 사용한다.
자세한 내용은 아래 참고 포스팅을 참고 바란다.
이번엔 이 builder를 사용하게 될때 값을 default로 셋팅할수 있는 annotation을 가져왔다.
만약 코드에서
TestBuilderInDto newdto = TestBuilderInDto.builder().id("dtoid").build();
이렇게 되어있고,
TestBuilderInDto 가
@Data @Builder @AllArgsConstructor public class TestBuilderInDto { private String id; private String name; } |
이렇게 되어있다면
newdto 는 id 값만 설정이 되어서 객체가 생성이 된다.
name에 default로 홍길동이라는 값을 넣어주고 싶다면
@Builder.Default private String name="홍길동"; |
이렇게 추가 해주면 된다.
근데 DTO를 자세히 살펴보면 AllArgsConstructor 은 존재하지만 NoArgsConstructor 가 존재하지 않는것을 알수 있다.
default값이 존재하기에 비어있는 객체를 만들수 없기에 함께 사용이 불가능하다.
다른 내용이지만 아래 참고포스팅에 ArgsConstructor annotation에 대한 내용이 있으니 읽어보는것도 도움 될것이다.
참고 포스팅
https://thenicesj.tistory.com/372
https://thenicesj.tistory.com/658
반응형
'IT > Java' 카테고리의 다른 글
숫자 자리수 0으로 채우기 (37) | 2023.12.28 |
---|---|
@ColumnDefalut Annotation (35) | 2023.12.27 |
marshalling / unmarshalling (직렬화와의 차이 feat. 코드베이스) (26) | 2023.12.20 |
JSONObject 에 대해서 (24) | 2023.12.19 |
Java 에서 Redis 사용하기 (@RedisHash , ValueOperations) (34) | 2023.12.06 |
댓글