Spring Boot Devtools 설치
-build.gradle
에 developmentOnly 'org.springframework.boot:spring-boot-devtools'
- build.gradle 우클릭 > Refresh Gradle Project 클릭하여 필요한 라이브러리 다운로드
- Boot Dashboard에서 서버명이 nsbb > nsbb[devtools] 로 바뀌는 것 확인
롬복 설치
- https://projectlombok.org/download 로 가서 롬복 플러그인 다운로드
- 다운로드한 lombok.jar 파일을 STS 폴더에 넣고 롬복 파일 실행
- IDE 찾을 수 없다는 경고가 뜨면 [Specify location] 클릭 > STS 설치 경로 선택
- [Install / Update] 클릭하여 롬복 플러그인 설치
- [Quit Installer] 눌러 종료
- STS 종료 후 재시작하고, build.gradle 파일에compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
입력
- build.gradle 우클릭 > Refresh Gradle Project 클릭하여 필요한 라이브러리 다운로드
Getter, Setter
- @Getter, @Setter 애너테이션 적용하여 롬복 에러나는지 확인
package com.mysite.nsbb;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class HelloLombok {
private String hello;
private int lombok;
public static void main(String[] args) {
HelloLombok helloLombok = new HelloLombok();
helloLombok.setHello("헬로");
helloLombok.setLombok(5);
System.out.println(helloLombok.getHello());
System.out.println(helloLombok.getLombok());
}
}
@RequiredArgsConstructor
- Final이 붙거나 @NotNull 이 붙은 필드의 생성자를 자동 성성해주는 롬복 어노테이션
- 위에서 작성한 HelloLombok 클래스 코드 수정
package com.mysite.nsbb;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
@RequiredArgsConstructor
@Getter
@Setter
public class HelloLombok {
private final String hello;
private final int lombok;
public static void main(String[] args) {
HelloLombok helloLombok = new HelloLombok("헬로", 5);
System.out.println(helloLombok.getHello());
System.out.println(helloLombok.getLombok());
}
}
- hello, lombok 속성에 final 적용하고 롬복의 @RequiredArgsConstructor 애너테이션을 적용하면, 해당 속성을 필요로 하는 생성자가 롬복에 의해 자동으로 생성 됨
- final이 없는 속성은 생성자에 포함 X
- 생성자를 직접 작성하려면 아래의 코드가 lombok 변수와 main 메서드 사이에 위치해있어야 함
public HelloLombok(String hello, int lombok) {
this.hello = hello;
this.lombok = lombok;
}
출처
'TIL > Spring' 카테고리의 다른 글
[Spring] View Templates, mustache, thymeleaf란? (0) | 2024.09.29 |
---|---|
[Spring] DI란 무엇인가? (0) | 2024.09.24 |
[Spring] 점프 투 스프링부트 - 1 (2) | 2023.07.26 |
[Spring] MVC 패턴이란? (1) | 2023.05.13 |
[Spring] 생성자 주입이란? (0) | 2023.05.12 |