-
Spring @RequestBody 와 @ResponseBodySpring 2019. 12. 1. 21:53반응형
Spring에서 RESTful API 구현시 주로 사용되는 @ResquestBody, @ResponseBody 어노테이션의 개념
@RequestBody 어노테이션이란?
- HTTP 요청의 body 내용을 자바 객체로 매핑한다.
@ResponseBody 어노테이션이란?
- 자바 객체를 HTTP 요청의 body 내용으로 매핑한다.
Controller.java
@Controllerpublic class BBsController {// HTTP 요청의 내용을 Bbs 객체에 매핑하기위해 @RequestBody 애너테이션을 설정한다.@RequestMapping(value="/bbs/insert", method = RequestMethod.POST)@ResponseBodypublic ApiResult bbsInsert(@RequestBody BBsVo bbsVo) {ApiResult result = bbsService.insert(bbsVo);return result;}}- @RestController로 컨트롤러로 생성시 @RestController는 리턴값에 자동으로
@ResponseBody를 붙게되어 HTTP 응답데이터(body)에 자바 객체가 매핑되어 전달되기 때문에 @ResponseBody이 생략가능※ @Controller인 경우에는 @ResponseBody 한다.)
※ RestApi 설계시 @RequestMapping > @PutMapping로 사용가능하다.
BbsVo.java
@Datapublic class BbsVo {private String title;private String contents;private List<Item> items;}json 서브밋 부분
var params = {title: "제목",contents: "내용",itmes: [{id: "1", code: "11"},{id: "2", code: "22"},{id: "3", code: "33"}]};$.ajax({url: "http://localhost:8080/bbs/insert",method: "post", //put 가능type: "json",data: params,success: function(data) {console.log(data);}});※ RestApi 설계시 method: "post", > method: "put", 로 사용가능하다.
반응형'Spring' 카테고리의 다른 글
Spring으로 배치 만들기 (quartz, scheduler,task) (0) 2020.06.07 스프링 Spring + 웹소켓 WebSocket 채팅 초간단 구현 (12) 2020.05.26 아이바티스(iBATIS) vs 마이바티스(MyBatis) 태그 비교 (0) 2019.09.29 스프링(Spring) 컨트롤러(Controller)가 아닌 곳에서 request session정보 가져오기 (0) 2019.02.06 스프링 @Controller 컨트롤러 리턴타입의 종류 (0) 2018.02.18