Spring/@ModelAttribute/@RequestParam/@RequestBody/@ResponseBody

2022. 7. 8. 01:49
728x90

@ModelAttribute

public String modelAttributeV1(@ModelAttribute HelloData helloData) {

 

ex) GET요청 username=jay&age=28 

-> HelloData객체를 먼저 만들고, username과 age가 HelloData에 있는지 찾은 후에 있으면 이 프로퍼티의 setter를 가지고 파라미터의 값을 입력한다.

ex) helloData.setUserName("jay) helloData.setAge(28)
-> 그러면 helloData(HelloData타입, 이름 jay,나이 28)라는 이름을 가진 객체를 만들게 되는 것이고, 이 객체는 나중에 템플릿에서 활용할 수 있다.

 

@RequestParam

public String requestParamV2(@RequestParam("username") String memberName,@RequestParam("age") int memberAge) {
	log.info("username={}, age={}", memberName, memberAge);
	return "ok";
}

username이라는 이름의 파라미터가 가진 값을 memberName에 저장한다.(age도 마찬가지로 memberAge에 저장한다.)

 

@RequestBody

메세지 바디로 넘어온 데이터를 객체에 담기 위해 쓰는 애노테이션

 

@ResponseBody

View 조회를 무시하고, HTTP message body에 직접 해당 내용 입력한다.

BELATED ARTICLES

more