Legday

[Spring]HTTP 응답메시지 데이터 다루는 방법 본문

Spring&Springboot/Spring(개인공부용)

[Spring]HTTP 응답메시지 데이터 다루는 방법

Legday 2022. 12. 21. 23:26
💡 스프링에서 응답데이터를 다루는 방법은 3가지가 있다
     1. 정적 리소스뷰 
     2. 템플릿 사용
     3. HTTP 메시지 사용

 

1. 정적 리소스

스프링 부트는 /resources 경로 안에서 정적 리소스를 관리한다.

/static 경로나 /public 등의 클래스패스에서 정적 리소스를 제공하고 모든 루트 경로는 /resources 이다.

정적 리소스는 html, css, 이미지 등의 정적인 파일을 말하는 것이다.

 

2. 뷰 템플릿(템플릿 엔진)

뷰 템플릿은 HTML 을 동적으로 생성하는 용도이다.

뷰 템플릿을 거쳐서 HTML 이 생성되고, 뷰가 응답을 만들어서 전달한다.

스프링 부트는 뷰 템플릿 경로를 /resources/templates 로 지정된다.

 

ModelAndView 방식

@RequestMapping("/response-view-v1")
public ModelAndView responseViewV1(){
    ModelAndView mav = new ModelAndView("response/hello").addObject("data", "hello!");

    return mav;
}

Model 객체 사용방식

스프링부트에서 타임리프 주입받으면 뷰 리졸버 경로를 자동으로 설정해준다. 즉 리턴값에 경로만 적어주면 된다.(/resources/templates ~~~ .html 경로가 지정되기 때문에 파일명만 리턴해주면 된다)

@RequestMapping("/response-view-v2")
public String responseViewV2(Model model) {
    model.addAttribute("data","Cristiano Ronaldo");

    return "response/hello";
}