자바 프레임워크인 Spring 을 빠르게 배워보자.

시작하기 전에…

  • 만들게 될 것:

    어떤 브라우저에서도 연결이 가능한 “Hello World!” 엔드포인트를 만들 것이다.

  • 필요한 것:

    1. IDE

    2. JDK: AdoptOpenJDK 8 또는 11 를 추천한다고 써있는데 JDK 도 없으면 깔자. 두 개 다 버전을 맞춰서 깔아야 한다.


Spring Boot 프로젝트 시작하기

start.spring.io 에서 프로젝트를 생성하자.

Add Dependencies 에서 “Spring Web” 을 추가하고, Generate 를 눌러 압축 파일을 받는다.

압축 파일에는 Spring Boot 가 들어있다.


코드 작성하기

src/main/java/com/example/demo 폴더 안의 DemoApplication.java 파일을 열어 다음과 같이 바꾼다.

package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class DemoApplication {


public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}

@GetMapping("/hello")
public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
return String.format("Hello %s!", name);
}

}

메소드 hello() 는 string 인수 name을 받아 "Hello" 와 합친다.

@RestController 주석은 이 코드의 엔드포인트가 웹에서 이루어져야 함을 Spring 에게 알린다.

@GetMapping("/hello")hello() 메소드가 http://localhost:8080/hello 주소의 리퀘스트에 답해야 함을 Spring 에게 알린다.

@RequestParamname 변수의 값이 리퀘스트에 있어야 함을 명시하고, 만약 없으면 디폴트로 “World” 를 사용하게 한다.


실행하기

터미널을 열어 프로젝트 폴더 안으로 들어가서 다음과 같이 입력한다.

  • Windows: mvnw spring-boot:run

  • MacOS/Linux: ./mvnw spring-boot:run

http://localhost:8080/hello 로 들어가보자!

url 끝에 ?name=Darae 를 추가해보자!

다음과 같은 에러가 날 경우

Error: JAVA_HOME not found in your environment.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.

JAVA_HOME 의 환경변수 설정을 해주면 된다.