본문 바로가기

Spring/Boost Course Web

4.4 Controller

1) RestController란?

Spring MVC에서 제공하는 RestController

 

@RestController

  • Spring 4 에서 Rest API 또는 Web API를 개발하기 위해 등장한 어노테이션 합니다.

  • 이전 버전의 @Controller와 @ResponseBody를 포함합니다.

 

MessageConvertor

  • 자바 객체와 HTTP 요청 / 응답 바디를 변환하는 역할

  • @ResponseBody, @RequestBody

  • @EnableWebMvc 로 인한 기본 설정

  • WebMvcConfigurationSupport 를 사용하여 Spring MVC 구현

  • Default MessageConvertor 를 제공

  • 링크 바로가기의 addDefaultHttpMessageConverters메소드 항목 참조

 

MessageConvertor 종류

 

JSON 응답하기

  • 컨트롤러의 메소드에서는 JSON으로 변환될 객체를 반환합니다.

  • jackson라이브러리를 추가할 경우 객체를 JSON으로 변환하는 메시지 컨버터가 사용되도록 @EnableWebMvc에서 기본으로 설정되어 있습니다.

  • jackson라이브러리를 추가하지 않으면 JSON메시지로 변환할 수 없어 500오류가 발생합니다.

  • 사용자가 임의의 메시지 컨버터(MessageConverter)를 사용하도록 하려면 WebMvcConfigurerAdapter의 configureMessageConverters메소드를 오버라이딩 하도록 합니다.

 


2) RestController를 이용하여 web api작성하기  

Rest Controller 사용하려면 반드시 jackson 라이브러리 추가. -> @RestCotroller

guestbook05의 controller패키지의 GuestbookApiController.java


3) Web API 테스트 코드 작성하기

test 폴더에서. junit으로 run

 

 

'Spring > Boost Course Web' 카테고리의 다른 글

5.1 상태유지기술 - Cookie & Session  (0) 2020.11.19
4.5 Swagger  (0) 2020.11.19
4.3 WEB API  (0) 2020.11.19
4.2 Layered Architecture  (0) 2020.11.19
4.1 Spring MVC  (0) 2020.11.19
3.3 Spring JDBC  (0) 2020.11.19