11월 11일
모회사 면접질문 정리....하 ㅠㅠ 면접질문 정리해 뒀던건데 까먹어서 속이 쓰리다리........
@RequestBody 란?
클라이언트가 보내는 http body부분(Json 및 xml형식)을 MessageConverter를 통해 JavaObject로 변환 시켜주는 역할
@Controller
public class UserController {
@PostMapping("/receive")
public String age(@RequestBody String req) {
System.out.println("출력결과>>> " + req);
return "result";
}
}
//출력결과>>> name=jun&age=13
html페이지 에서 form형식으로 이름과 나이를 입력하여 post하였을때,
MessageConverter를 통해 "name=jun&age=13" 이런 형식의 JavaObject로 변환시켜줌
@RequestParam 란?
1개의 HTTP 파라미터를 얻기위해 사용되며 기본값으로 지정할 수 가 있다.
필수여부가 true이기때문에 반드시 필요한 경우가 아니라면 required=false 설정해야함.
@Controller
public class UserController {
@PostMapping("/receive")
public String age(@RequestParam String name) {
System.out.println("출력결과>>>" + name);
return "result";
}
}
//출력결과>>> jun

출처:https://ocblog.tistory.com/49
url상에서 데이터를 전달하는 경우(form 태그 등) @RequestParam 을 이용하고,
그 외의 경우 @RequestBody 를 이용하자!
@ModelAttribute 란?
http body내용과 http파라미터의 값들을 getter,setter,생성자를 통해 주입하기 위해 사용한다.