Hello World

김성태·2022년 6월 22일
0

스프링부트

목록 보기
6/15

컨트롤러 (Controller)

모델(Model)과 뷰(View) 사이에서 브릿지 역할을 수행
앱의 사용자로부터 입력에 대한 응답으로 모델 및 뷰를 업데이트 하는 로직을 포함
사용자의 요청은 모두 컨트롤러를 통해 진행되어야 함
컨트롤러로 들어온 요청은 모델이 어떻게 처리할지 결정하여 모델로 요청을 전달함

ex) 쇼핑몰에서 상품을 검색하면 그 키워드를 컨트롤러가 받아 모델과 뷰에 적절하게 입력을 처리하여 전달함

@RestController

Spring Framework 4 버전부터 사용가능한 어노테이션
@Controller에 @ResponseBody가 결합된 어노테이션
컨트롤러 클래스 하위 메소드에 @ResponseBody 어노테이션을 붙이지 않아도 문자열과 JSON 등을 전송할 수 있음
View를 거치지 않고 HTTP ResponseBody에 직접 Return값을 담아 보내게 됨

도식화

@RequestMapping

MVC의 핸들러 매핑(Handler Mapping)을 위해서 DefaultAnnotationHandlerMapping을 사용
DefaultAnnotationHandlerMapping 매핑정보로 @RequestMapping 어노테이션을 활용
클래스와 메소드의 RequestMapping을 통해 URL을 매핑하여 경로를 설정하여 해당 메소드에서 처리

value : url 설정
method : GET, POST, DELETE, PUT, PATCH 등

스프링 4.3버전 부터 메소드를 지정하는 방식보다 간단하게 사용할 수 있는 어노테이션을 사용할 수 있음
- @GetMapping
- @PostMapping
- @DeleteMapping
- @PutMapping
- @PatchMapping

Hello World!

기본적으로 프로젝트를 처음 만들었을때 Application으로 끝나는 파일이 있고
Application을 통해서 서버를 실행시킬 수 있다

먼저 controller 패키지를 생성해 HelloController를 작성한다

HelloController.java

@RestController
public class HelloController {
    @GetMapping("/hello")
    public String hello() {
        return "hello";
    }

}

0개의 댓글