본문 바로가기
카테고리 없음

211117 TIL

by 오우지 2021. 11. 17.

 

 

HTTP 응답

스프링 부트는 

정적 리소스는 파일을 변경 없이 그대로 서비스 하는 것으로

/static, /public, /resources, /META-INF/resources 디렉토리에 있는 정적 리소스를 제공한다.

예를 들어 src/main/resources/static/basic/hello-form.html을 실행하고 싶으면

http://localhost:8080/basic/hello-form.html을 실행하면 된다.

 

뷰 템플릿은 뷰가 응답을 만들어서 전달한다. 일반적으로 HTML을 동적으로 생성하는 용도로 사용한다.

클래스가 @Controller고 return을 String으로 하는 경우 @ResponseBody가 없으면 String에 해당하는 뷰 리졸버가 실행되고 @ResponseBody가 있으면 HTTP 메시지에 직접 String이 출력된다. 기본적으로 response/hello를 반환하면 templates/response/hello.html이 반환된다.

 

해당 메서드가 void를 반환하고 HttpServletResponse나 OutputStream같은 HTTP 바디 처리 파라미터가 없으면 요청 파라미터를 논리 뷰 이름으로 사용한다. 하지만 사용을 권장하지 않는다.

 

현재 레벨에서는 스프링이 제공하는 기능으로 대부분 커버가 가능하지만 기능 확장을 하기 위해선 스프링이 대부분 Interface로 구현 돼 있기 때문에 WebMvcConfigurer를 상속받아서 스프링 빈으로 등록하면 된다.

 

알것같다. 내일도 꾸준한 공부. 화이팅