일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 자바 스레드 실행 순서 제어
- Easy
- heroku
- array
- input
- hash table
- SpringBoot 2
- R
- 카데인 알고리즘
- 자바입력
- 자바 thread 실행 순서 제어
- JAVA11
- 수학
- 사칙연산
- scanner
- Kadane's Algorithm
Archives
- Today
- Total
DeFacto-Standard IT
Object DeSerialization (JSON) (1) - @RequestBody 본문
SpringFramework/References
Object DeSerialization (JSON) (1) - @RequestBody
defacto standard 2018. 5. 3. 22:53@RequestBody는, Client에서 Server로 객체의 내용을 전송할 때, 이를 객체로 DataBinding하여 사용할 때 용이하다.
네트워크를 통해서 전송하려면 Object는 무조건 String으로 전송해야 하는데, 다시 받는 곳에서는 String을 Object로 바로 받아서 사용한다면 굉장히 편할 것이다.
Client에서는 JavaScript Library인 JQuery의 $.ajax()에서 JSON.stringify()함수를 사용하여 Object를 String으로 변환시킨 후 이를 인자로 태워서 Request한다.
@RequestBody는 인자 앞에 붙여서 사용할 수 있다. 이때, JSON의 키 값이 받으려는 Object의 필드명과 동일해야 한다.
@RestController
@RequestMapping("/rest/reply")
public class ReplyController {
@Inject
ReplyService replyService;
@RequestMapping(value = "", method = RequestMethod.POST)
public ResponseEntity<?> addReply(@RequestBody ReplyVO reply) throws Exception {
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
String username = authentication.getName();
if (username == null)
return new ResponseEntity<Void>(HttpStatus.BAD_REQUEST);
reply.setReplydate(new Date());
reply.setReplyno(replyService.addReply(reply));
return new ResponseEntity<ReplyVO>(replyService.getReplyById(reply.getReplyno()), HttpStatus.OK);
}
}
'SpringFramework > References' 카테고리의 다른 글
Spring Boot 2.4에서 properties 사용하기 (0) | 2021.01.16 |
---|---|
Object Serialization (JSON) (2) - jackson-databind# ObjectMapper Class (0) | 2018.05.03 |
Object Serialization (JSON) (3) - net.sf.json (0) | 2018.05.03 |
Object Serialization (JSON) (2) - jackson-databind# ObjectMapper Class (0) | 2018.05.03 |
Object Serialization (JSON) (1) - @RestController, @ResponseBody (0) | 2018.05.02 |
Comments