블로그 목적 :
Lombok 관련 @Builder 와 @Accessors 내용을 깔끔하게 정리해본다.
블로그 요약
하나, Lombok이 무엇인지 알아본다.
둘, Lombok 관련 @Builder 와 @Accessors 의 주요 내용을 간단하게 정리해본다.
블로그 상세 내용
우선, Lombok 에 대해서 정리해 보면요 아래와 같은데요..
- Lombok 은 아래와 같이 홈페이지에서 설명하고 있는데요..
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.
Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your logging variables, and much more.
즉, 한마디로 Project Lombok은 자동으로 편집기에 연결하고 도구를 빌드하여 Java를 향상시키는 Java 라이브러리라고 머릿속에 넣어두시면 되는데요..
좀 말이 어렵다고요 ?
- 그럼 제가 Lombok을 사용하면서, 느낀점에 대해서 설명드리자면 아래와 같습니다.
- Lombok 을 사용하게 되면, 지원되는 어노테이션을 통해서 반복되는 getter , setter , toString 등의 메서드 작성 코드를 줄여주는 라이브러리 정도로 정리해볼 수 있겠네요..
오늘 공부및 정리해볼 내용은 아래와 같습니다. (제가 주로 사용하는 유용한 Lombok 관련 어노테이션이죠!!)
둘중에 우선, @Builder 어노테이션에 대해서 정리해본다면 아래와 같은데요..
아래는 예시코드고요..
위와 같이 @Builder 어노테이션을 사용하시면...아래와 같이 사용이 가능하게 됩니다.
사용 문법을 간략하게 정리하자면..
- [ObjectName].builder().[fieldName]([fieldValue]).build();
그리고, @Builder의 장점을 정리해 보면 아래와 같이 크게 2가지로 정리해 볼 수 있는데요..
하나, 필드의 순서에 상관없이 객체를 생성할 수 있다.
(위의 예제를 보면 service , key, value, auth 순으로 필드가 정의되어있지만 builder()에서는 service, auth, key, value순으로 객체를 생성할 수 있습니다. )
둘, 원하는 필드만 파라미터로 객체를 생성할 수 있다.
(즉, service, key 필드만으로도 객체를 생성할 수 있게됩니다.)
이어서, @Accessors 에 대해서도 정리해보겠습니다.
@Setter를 이용해서 객체를 생성할 때에는 여러 줄로 setMethod를 생성해야하는 단점이 존재하게되는데요..
이러한 단점을 보완하기위해 @Accessors(chain=true)를 사용하면 됩니다.
즉, 해당 @Accessors(chain=true) 어노테이션을 추가하면, 아래와 같이 사용가능하죠..(개인적으로 신세계더라고요)
즉, @Accessors(chain=true)의 장점을 정리해보면,
일일이 setMethod를 여러 줄로 생성할 필요 없이 위와같이 Chain형태로 이어서 원하는 setMethod를 생성할 수 있다라고 머릿속에 넣어두시면 좋을것 같네요..
그럼, 결론을 간단하게 정리하고 블로그를 마무리하도록 하겠습니다.
결론
제가 느끼는 Lombock 에 대해서 설명드리자면 아래와 같습니다.
- Lombok 을 사용하게 되면, 지원되는 어노테이션을 통해서 반복되는 getter , setter , toString 등의 메서드 작성 코드를 줄여주는 라이브러리 정도로 정리해볼 수 있겠네요..
오늘 공부및 정리해본 내용은 아래와 같습니다. (제가 주로 사용하는 유용한 Lombok 관련 어노테이션이죠!!)
@Builder 어노테이션은 객체생성시 유용하고...
@Accessors(chain=true)어노테이션은 일일이 setMethod를 여러 줄로 생성할 필요 없이 위와같이 Chain형태로 이어서 원하는 setMethod를 생성할 수 있다라고 정리해볼 수 있겠네요..
오늘 블로그는 여기까지고요...
이만 줄이겠습니다.
항상 믿고 봐주셔서 감사합니다..
오늘도 마지막까지 제 글을 끝까지 읽어주셔서 진심으로 감사드리고, 제 글이 조금이라도 여러분의 각자의 삶을 살아가시는데 도움이 되셨길 기원합니다.
앞으로도 더욱 좋은 블로그를 남기는 제가 되도록 노력하겠습니다.
그리고, 제 글을 읽으시면 말이 됩니다.
항상 말에는 반드시 삶을 움직이는 힘이 있습니다.
제가 열심히 정성스럽게 정리한 저만의 지식과 1일 1블로그하는 제 블로그에 담긴 글들을 통해서,
여러분들의 삶과 운명을 반드시 조각하고 움직이시길 기원합니다.
이상입니다. 감사합니다.
'좋아하는 것_매직IT > 1.spring' 카테고리의 다른 글
마이크로서비스에서 구성관리(configuration management) 깔끔정리 (ft. Git을 활용한 간단한 스프링 클라우드 컨피그 서버 구축) (0) | 2023.04.07 |
---|---|
AOP(Aspect-Oriented Programming) 깔끔하게 정리하기 (0) | 2023.03.28 |
querydsl 관련 자주 사용하는 fetch 깔끔하게 정리하기 (0) | 2022.05.13 |
Spring Boot 에서 GSON 라이브러리 활용하기 (0) | 2022.05.05 |
Spring 관련 간단한 HTTP 연동 로직 구현및 설명 깔끔하게 정리하기 (0) | 2022.04.18 |