bitna's study note·2022년 11월 10일

스프링

목록 보기
43/54

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,생성자를 통해 주입하기 위해 사용한다.

profile
좋은개발자가 되기위한 삽질기록 노트

0개의 댓글