Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Vue 알아보기
- spring Annotation
- 구글 애드센스 수익
- IntelliJ
- AES256
- intelliJ plugin
- python
- MYSQL
- spring boot 시작
- 미국 배당주
- apache log4j
- Vue 강의
- 티스토리 광고 수익
- Vue
- 애드센스 수익
- docker mysql
- 도커
- python 기초
- Spring
- scrapy
- gradle
- Vue 배우기
- docker 명령어
- Spring Batch
- 미국주식
- Spring Batch 강의
- JDK1.3
- 젠킨스
- docker
- Python 기본편
Archives
나만의공간
@Accessors 어노테이션 설명 본문
lombok을 사용하면서 lombok에서 제공하는 어노테이션을 사용하게 됩니다.
이중 Accessors관련 어노테이션이 어떤 기능을 하고 어떤 경우에 사용하게 되는지 정리를 합니다.
Accessors
우선 간단한 샘플예제를 확인후 관련 기능을 설명합니다.
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
// @Accessors 어노테이션을 사용하여 getter 및 setter 작성 규칙을 설정합니다.
@Accessors(chain = true, fluent = true, prefix = "_")
public class Person {
// _name 필드에 대한 getter 및 setter 메서드를 생성합니다.
@Getter @Setter
private String _name;
// _age 필드에 대한 getter 및 setter 메서드를 생성합니다.
@Getter @Setter
private int _age;
// @ToString 어노테이션을 사용하여 toString 메서드를 생성합니다.
@Override
public String toString() {
return "Person(" + this._name + ", " + this._age + ")";
}
// main 메서드에서 클래스를 테스트합니다.
public static void main(String[] args) {
// 체이닝과 플루언트 스타일의 메서드 호출을 사용하여 객체를 생성하고 속성을 설정합니다.
Person person = new Person().name("John").age(30);
// 생성된 객체를 출력합니다.
System.out.println(person);
}
}
- chain: 메서드에 체이닝을 가능하게 합니다. this를 반환하여 메서드 호출을 연결할 수 있게 됩니다.
e.g) Person person = new Person().name("John").age(30); - fluent: 플루언트 스타일의 메소드를 생성할지 여부를 결정하고 기본값은 'false' 입니다.
setName / setAge 같이 set을 미사용할 수 있습니다.
e.g) Person person = new Person().name("John").age(30); - prefix: 생성할 getter 및 setter 메서드의 접두사로 사용하게 됩니다. 기본값은 없습니다.
this._name과 같이 변경하여 get메서드를 호출하게 됩니다.
e.g) return "Person(" + this._name + ", " + this._age + ")";
'IT > Spring' 카테고리의 다른 글
[Spring Batch] Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true 오류 해결 (0) | 2023.09.05 |
---|---|
Spring DB Param Mapping Log 출력 (0) | 2022.06.23 |
Spring Boot Template Engine 연결 (Pebble Template) (0) | 2022.01.20 |
Spring Boot Project Initializr (GitHub 위치) (0) | 2022.01.14 |
번외 : Spring Boot War파일 생성, 로컬 Tomcat 뛰우기 (0) | 2022.01.08 |
Comments