본문 바로가기

전체 글135

API (@ResponseBody) @RestController = @ResponseBody + @Controller @ResponseBody를 사용하면 viewResolver를 사용하지 않음. 일반 컨트롤러(뷰 템플릿 엔진 처리 방식 or 정적 컨텐츠 반환 방식)가 아니기 때문. 대신에, HttpMessageConverter가 작동. HttpMessageConverter String 처리 : StringHttpMessageConverter 객체 -> JSON 처리 : MappingJackson2HttpMessageConverter byte 처리 등 기타 여러 HttpMessageConverter가 기본으로 등록되어 있음. ★ 클라이언트의 HTTP Accept header와 서버의 컨트롤러 반환 타입 정보를 조합해서 적절한 HttpMess.. 2020. 11. 17.
@RequestParam GET 요청 : https://localhost:8080/sample/sample-param=kim @RequestParam("sample-param") String sampleName sampleName 값.equals("kim") == true 2020. 11. 17.
Spring Boot 정적(static) 컨텐츠 처리 방식 정적 컨텐츠 처리란, 정적(가만히 있는) 컨텐츠를 그대로 퍼올려 반환시켜주는 처리이다. 서버 컴퓨터 내에 있는 파일을 아무 처리 없이 그대로 반환시켜 주는 것이다. 웹 브라우저에서의 static 컨텐츠 요청 방식은 예를 들면, https://localhost:8080/sample-static-file.html 이다. 일단 Spring Boot의 내장 톰캣 서버는 sample-static-file과 매핑된 일반 컨트롤러를 먼저 찾는다. 매칭되는 일반 컨트롤러가 없어 템플릿 엔진 처리 방식이 아니므로 여기서 viewResolver는 사용되지 않는다. 그래서 이후에는 마지막으로 /resources/static/sample-static-file.html 를 찾는다. 해당 위치에 해당 파일이 있으면, 이 정적 컨.. 2020. 11. 17.
Spring Boot viewResolver (template engine 방식) Spring Boot 일반 Controller viewResolver(template engine 뷰 해결사) 동작방식여기서 일반 Controller란, @Contoller를 적용한 Controller 함수를 말한다.일반 Controller는 viewResolver가 Spring Boot template engine 적용을 시킨다.일반 Controller는 String을 반환해야 한다. 이와 다른 Controller로는 @RestController를 적용한 (API) Controller 함수가 있다. 일단, 웹 브라우저에서 localhost:8080/sample 이라고 요청이 들어왔다고 해보자.그러면, Spring Boot 내장 톰캣 서버에서 /sample에 매칭되어있는 Controller를 찾는다. 해.. 2020. 11. 17.