반응형
Java, Spring에서 자주 사용하는 반복되는 code들을 Annotation으로 구현하여 간편하게 표현할 수 있도록 도와주는 라이브러리이다.
의존성 추가
dependencies {
implementation 'org.projectlombok:lombok:1.18.22'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.projectlombok:lombok:1.18.22'
}
@Getter, @Setter
Getter와 Setter를 @Getter, @Setter annotation을 사용하여 아래 코드와 같이 반복된 코드를 작성하지 않고, 쉽게 사용할 수 있다.
Public class Member {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.bame
}
}
생성자 Annotation
- 생성자를 자동으로 생성해주는 annotation이다.
acceess를 paramter로 갖고 있어 접근 level을 설정할 수 있다.- @NoArgsConstructor
- Parameter가 없는 기본생성자 생성
- 모든 필드 값을 파라미터로 받는 생성자 생성
- final 이나 @NonNull인필드 값만 파라미터로 받는 생성자를 만들어줍니다. 아래 코드와 같이 MemberRepository 객체를 선언한 후에 annotation을 달아주면, 생성자를 만들어준다.
@Service
@RequiredArgsConstructor
public MemberService {
private final MemberRepository memberRepository;
...
}
@Data
@Data Annotation은 아래 Annotation들을 모두 포함하고 있다.
- @Getter, @Setter
- @RequiredArgsConstructor
- @ToString
- @EqualsAndHashCode
data class에서 많이 사용되는 Annotation들을 포함하고 있는 것 같다. DTO를 사용할 때 많이 자주 사용하는 annotation이다.
@Data
public class UserDto {
private Long id;
private String nickname;
@Builder
public UserDto(Long id, String nickname) {
this.id = id;
this.nickname = nickname;
}
}
References
반응형
'Spring' 카테고리의 다른 글
| [Study] Test Code Study 정리 (1) (1) | 2024.02.27 |
|---|---|
| [Spring] AWS EC2에 Spring Boot Project 배포하기. (0) | 2023.06.05 |
| [Spring Boot] Spring Boot로 HTTP API 설계하기 (2) | 2023.05.10 |
| [Spring] Spring Boot 프로젝트에서 Swagger로 API 문서 관리 (0) | 2023.05.01 |
| [Spring] H2 Database 설정 (0) | 2023.04.20 |