스프링 MVC

HTTP 응답 처리 RESPONSE

notx2wice 2021. 10. 28. 13:06

응답할 때 어떻게 클라이언트에게 정보를 전달 할 수 있는가!!

1.responsebody

    
    @GetMapping("/response-body-string-v3")
    public String responseBodyV3() {
        return "ok";
    } //바디를 스트링으로 채울랭

    @GetMapping("/response-body-json-v1")
    public ResponseEntity<HelloData> responseBodyJsonV1() {
        HelloData helloData = new HelloData();
        helloData.setUsername("userA");
        helloData.setAge(20);
        return new ResponseEntity<>(helloData, HttpStatus.OK);
    } //json으로 채우고 싶을 때 dto를 사용해서

    @ResponseStatus(HttpStatus.OK) //동적인것은 아님 동적으로하고 싶음 위에거 쓰라.
    @ResponseBody //바디에 직접 적용. 이거 없음 뷰로 간다켔음
    @GetMapping("/response-body-json-v2")
    public HelloData responseBodyJsonV2() {
        HelloData helloData = new HelloData();
        helloData.setUsername("userA");
        helloData.setAge(20);
        return helloData;
    }

2. 뷰를 반환하기

@Controller
public class ResponseViewController {

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

    @RequestMapping("/response-view-v2")
    public String responseViewV2(Model model) {
        model.addAttribute("data", "hello!");
        return "response/hello";
    }
	//스태틱으로 가져오는 경우.
    @RequestMapping("/response/hello") //경로로 지정하면 없어도됨
    public void responseViewV3(Model model) {
        model.addAttribute("data", "hello!");
    }

}

'스프링 MVC' 카테고리의 다른 글

HTTP 요청 처리 REQUEST  (0) 2021.10.28