이번에는 이전부터 계속 언급이 되었던 HTTP 메시지 컨버터에 대해 알아보려고 한다. 스프링 MVC는 메시지 바디에 맞춰서 알맞게 메시지 컨버터를 적용한다. 메시지 컨버터 구조 메시지 컨버터는 인터페이스로 이루어져있다. package org.springframework.http.converter; public interface HttpMessageConverter { boolean canRead(Class clazz, @Nullable MediaType mediaType); boolean canWrite(Class clazz, @Nullable MediaType mediaType); List getSupportedMediaTypes(); T read(Class
이번에는 어노테이션 기반 컨트롤러에서 요청을 처리하는 방법에 대해서 알아보려고한다. 이전에는 어떻게 처리했는지와 어노테이션 기반의 처리방법들을 살펴보자. HttpRequest 헤더 처리 Servlet 이용 먼저 HttpServlet를 이용한 방법이다. @RestController public class RequestHeaderController { @RequestMapping("/headers") public String headers(HttpServletRequest request, HttpServletResponse response){ return "ok"; } } HttpServletRequest, HttpServletResponse 우리가 이전에도 사용해봤었던 요소이다. 요청, 응답 정보에 대한 ..
이번에는 Spring을 이용한 여러가지 매핑 방법에 대해 알아보려고한다. 기본적으로 지금까지 사용했던 RequestMapping 이외에 몇번 사용해봤던 Get, PostMapping 그리고 활용법까지 살펴보자. @RequestMapping 가장 기본적으로 사용되는 요청에 대한 매핑법이다. @RequestMapping("/hello-basic") public String helloBasic(){ log.info("helloBasic"); return "ok"; } @RequestMapping(value = "/mapping-get-v1", method = RequestMethod.GET) public String mappingGetV1() { log.info("mappingGetV1"); return "o..
앞으로 로그를 사용하게 될텐데 이에 대해서 간단히 알아보자. 평소에 사용하던 System.out.println()과 같은 시스템 콘솔을 이용한 출력을 사용하지 않고, 로그 라이브러리를 이용해서 로깅을 하는 것이 좋다. 로깅 라이브러리 SLF4J slf4j는 로그 인터페이스로써 주로 사용되는 것은 logback 같은 구현체이다. import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class Lo..