@RequestBody, @ResponseBody


json형태의 데이터를 주고 받는 경우가

자주 있을수 있다

xml이나 json등의 형식으로 주고받은 경우가

빈번하게 생기고 있기 때문이다.


때문에 스프링 MVC도 클라이언트에서

전송한 xml 데이터나 json 데이터를 컨트롤러에서

DOM객체나 자바 객체러 변환해서 송,수신 받을수 있다.


@RequestBody 어노테이션과 @ResponseBody 는

각각 HTTP요청 몸체를 자바 객체로 변환하고

자바 객체를 HTTP 응답 몸체로 변환하는데 사용된다


@RequestBody

-HTTP 요청 몸체를 자바 객체로 전달받음

-HTTP 요청의 body내용을 자바 객체로 매핑


@ResponseBody

-자바 객체를 HTTP 응답 몸체로 전송

-자바 객체를 HTTP 요청의 body 내용으로 매핑


ex1)

1
2
3
4
5
6
@RequestMapping(value= ~~~, produces=~~~~~)
public @ResponseBody JSONObject getTest(HttpServletRequest request, HttpServletResponse response, Model model) {
    JSONObject json = new JSONObject();
    json = service.test(param);
    return json;
}
cs



ex2)


1
2
3
4
5
6
7
8
9
10
11
@RestController
public class LoginController
{
    //HTTP 요청의 내용을 객체에 매핑하기 위해 @RequestBody 어노테이션 설정
    @RequestMapping (value~~ mehtod~~~)
    public login(@RequestBody Login loginVO)
    {
        Login login = login(loginVO);
        return login;
    }
}
cs

@RestController 를 사용할경우 @ResponseBody
를 사용하지 않아도 됩니다. 리턴값에
자동으로 @ResponseBody가 붙어 HTTP 응답데이터(nody)에
자바 객체가 매핑되어 전달 되기 때문입니다.
하지만 @Controller 인경우 @ResponseBody를
써워야 합니다



'SPRING' 카테고리의 다른 글

JsonUtil에 JsonToMap 사용하기  (0) 2018.07.03
자동로그인 방지기능 만들기  (1) 2018.03.28
JSON.stringify(); JSON.parse();사용하기  (0) 2018.03.02
SPRING - Mybatis 사용하기(3)  (0) 2018.02.13
SPRING - Mybatis 사용하기(2)  (0) 2018.02.13

댓글

Designed by JB FACTORY