반응형
# 목적
: Lombok의 주요 어노테이션과 Builder 패턴에 대한 이해
❓ Lombok
- 자바빈즈(JavaBeans, 값을 저장하는 객체)에 Getter/Setter, 생성자, toString, equals/hashcode 등의 메서드를 자동으로 생성시킨다.
롬복의 주요 어노테이션
1. @Getter
- Getter 메서드 추가
2. @Setter
- Setter 메서드 추가
3. @ToString
- toString 메서드 추가
4. @EqualsAndHashCode
- equals 메서드와 hashCode 메서드 추가
5. @Data
- 기본 생성자 메서드, Getter/Setter, equals/hashCode, toString 메서드 추가
6. @NoArgsConstructor
- 매개변수 없는 기본 생성자 메서드 추가
7. @AllArgsConstructor
- 모든 매개변수를 초기화하는 생성자 메서드 추가
8. @RequiredArgsConstructor
- final 키워드가 지정된 멤버변수를 매개변수로 가지는 생성자 메서드 추가
9. @Builder
- 해당 클래스에 Builder 패턴을 적용시킨다.
- 클래스에 부착하면 모든 멤버변수를 대상으로 Builder 패턴을 적용하고, 생성자에 부착하면 생성자의 매개변수에 대해서만 Builder 패턴을 적용한다.
* Builder 패턴
- 객체를 생성하는 방법
- 해당 클래스에 대한 빌드 클래스를 정적 내부 클래스로 제공한다.
- Builder 클래스가 제공하는 메서드를 이용해서 멤버변수를 초기화한다.
- 멤버변수를 초기화할 때 사용하는 메소드가 멤버변수의 이름과 동일하기 때문에 가독성이 높다.
- 다양한 조합으로 멤버변수를 초기화하는 것이 가능하다.
- Builder 클래스가 제공하는 메서드는 메서드 체이닝을 지원한다.
* Builder패턴의 메서드 체이닝

< 해당 글은 velog에서 이전하며 옮겨온 글로, 가독성이 좋지 않을 수 있는 점 양해 부탁드립니다. >
🔗 velog 버전 보기 : https://velog.io/@ryuneng2/Spring-Lombok-롬복-Builder패턴
'BackEnd > Spring' 카테고리의 다른 글
[Spring] 스프링의 주요 어노테이션과 요청핸들러 메서드 (0) | 2025.01.17 |
---|---|
[Spring Boot] Spring Boot로 웹 애플리케이션 프로젝트 생성하기 (기본 설정) (0) | 2025.01.17 |
[Spring] @SpringBootApplication 어노테이션 (2) | 2025.01.16 |
[Spring] Spring Boot란? (2) | 2025.01.16 |
[Spring] JdbcTemplate의 RowMapper 구현법 - 익명객체, 람다식 (0) | 2025.01.16 |