이전에 생성한 Spring Boot 프로젝트에 첫 번째 클래스를 생성해 보겠음.
@RestController
public class HelloWorldController{
// GET
// URI: /hello-world
// @RequestMapping(method=RequestMethod.GET, path="/hello-world")
}
HelloWorldController라는 이름의 클래스를 생성함. 먼저 이 클래스가 Spring Context에 등록되게 하기 위해서 우리는 @RestController라는 어노테이션을 사용할 것임.
cf) @RestController와 @Controller의 차이는 다음 글에서 알아볼 예정이다. 일단은 우리가 만들고자 하는 RESTful 서비스에서는 화면단을 가지고 있지 않기 때문에 Controller가 아니라 RestController를 사용한다는 것만 기억해 두자.
이제 이 클래스 안에 첫 번째 method를 하나 만들어 보자. 우리가 작성할 API는 HTTP의 GET Method로 서비스될 것을 만들 것이며 URI는 /hello-world로 작성하면 서비스가 작동되게 할 것임. 이러한 두 가지 작업을 정리하기 위해서 method 앞에 @RequestMapping이라는 Annotation을 달 수 있는데 method의 이름을 RequestMethod.GET, 지정되어 있는 경로는 /hello-world로 할 수 있음.
이들을 주석으로 처리해 놓은 이유는 이를 좀 더 간단하게 할 수 있기 때문임. 이렇게 써 보도록 하자.
@RestController
public class HelloWorldController{
// GET
// URI: /hello-world
// @RequestMapping(method=RequestMethod.GET, path="/hello-world")
@GetMapping(path = "/hello-world")
public String helloWorld(){
return "Hello World";
}
}
@GetMapping이라고 하면 전달하고자 하는 HTTP Method가 무엇인지 굳이 따로 명시하지 않더라도 이 Annotation만 가지고도 HTTP의 GET Method라는 점을 바로 알 수 있음. 그리고 난 뒤 path 값으로 "/hello-world"를 명시하면 길게 작성한 것보다 훨씬 더 간단하게 해결할 수 있음.
출처
본 포스트는 인프런 이도원 강사님의 "Spring Boot 3.x 를 이용한 RESTful Web Services 개발" 강의를 통해 직접 작성 및 정리한 글입니다.
'Java > Spring' 카테고리의 다른 글
[Spring Boot] DispatcherServlet과 프로젝트 동작의 이해 (0) | 2024.09.12 |
---|---|
[Spring Boot] Hello World Bean (0) | 2024.09.11 |
[Spring Boot] Spring Boot 프로젝트의 구조와 실행 방법 (1) | 2024.08.30 |
Restful API 설계 (2) | 2024.08.28 |
[Spring Boot] Spring Boot 개요 (1) | 2024.08.26 |