[Annotation]@RestController

Rest 방식 접근의 이해

Rest 란?

  • URI 정보의 지원

  • HTTP Method 의 필요

  • 두가지를 합쳐서 @RestController안에서 해결

RestController 는

  • @ResponseBody의 생략
    • @ResponseBody는 JSP를 View를 사용하지 않고 데이터 그대로를 보여준다.(JSON)형식으로

    • Object » JSON (직렬화) 해서 보여줌

  • HttpStatus를 추가 ResponseEntity의 사용

    • Http Method의 활용

      • 보통 GET, POST 만 사용

      • GET, POST, DELETE, PUT, Trace, Head, Content, Options

  • URI

    • 보통의 URI : https://localhost:8080/sboard/readPage?bno=1

    • data 를 @RequestParam 통해서 받음

    • Rest 방식의 URI : https://localhost:8080/replies/1

    • data 를 @PathVariable 통해서 받음

    • 두 방식 모두 객체로 받는 방식은 @RequestBody

      • @RequestBody 는 JSON » Object (역직렬화) 해서 값으로 사용
  • @ResponseBody@RequestBody 의 비교
\ @ResponseBody @RequestBody
Casting 역직렬화(to Object) 직렬화(to JSON)
사용 반환 타입 매개변수