728x90
반응형
SMALL

Spring Boot Devtools 설치하기

 

Spring Boot Devtools 라이브러리는 서버를 매번 재시작할 필요 없이 수정한 내용이 반영된다.

package com.mysite.sbb;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {
	@GetMapping("/hello")
	@ResponseBody
	public String hello() {
		return "Hello SBB";
	}
}

HelloController부분에서 return "Hello SBB"로 수정.

 

plugins {
	id 'java'
	id 'org.springframework.boot' version '3.2.4'
	id 'io.spring.dependency-management' version '1.1.4'
}

group = 'com.mysite'
version = '0.0.1-SNAPSHOT'

java {
	sourceCompatibility = '17'
}

repositories {
	mavenCentral()
}

dependencies {
	implementation 'org.springframework.boot:spring-boot-starter-web'
	testImplementation 'org.springframework.boot:spring-boot-starter-test'
	developmentOnly 'org.springframework.boot:spring-boot-devtools' //devtools 추가
}

tasks.named('test') {
	useJUnitPlatform()
}

build.gradle 파일의 dependencies에 한 줄만 추가하면 된다.

 

sbb 마우스 오른쪽 클릭 후 Gradle -> Refresh Gradle Project 클릭하여 필요한 라이브러리 설치.

 

sbb [devtools] [:8080]으로 변경된 것 확인.

위의 첫번째 버튼을 클릭 해 서버를 재시작 하자.

 

변경된 것을 확인할 수 있다.

 

package com.mysite.sbb;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {
	@GetMapping("/hello")
	@ResponseBody
	public String hello() {
		return "Hello Spring Boot Board";
	}
}

이번엔 return 내용을 수정해서 저장만 하고 자동 반영되는 건지 확인해보자.

 

서버를 재시작 하지 않고도 새로고침만 했더니 바로 반영되는 것을 확인할 수 있다.

 

롬복 설치하기

https://projectlombok.org/download
 

Download

 

projectlombok.org

 java -jar .\lombok.jar

다운 받은 폴더에서 cmd창으로 명령어 실행.

 

어느 IDE에 적용할건지 선택 후 Install/Update 클릭.

 

Quit Installer 클릭.

 

//lombok
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projeectlombok:lombok'

STS 종료하고 재시작 후 build.gradle 의 dependencies 추가.

 

저장 후 gradle refesh 필수!!

 

롬복으로 Getter, Setter 메서드 만들기

package com.mysite.sbb;

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());
	}
}

직접 setter와 getter를 만들지 않고도 결과가 잘 나온 것을 확인할 수 있다.

 

롬복으로 생성자 만들기

package com.mysite.sbb;

import lombok.Getter;
import lombok.RequiredArgsConstructor;

@Getter
@RequiredArgsConstructor
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());
	}
}

RequiredArgsContructor 어노테이션을 추가하면 생성자를 따로 만들어주지 않아도 된다.

대신 멤버변수는 모두 final 이어야 하고 그럼 setter는 사용할 수 없다.

 

728x90
반응형
LIST

+ Recent posts