본문 바로가기
공부 기록

@RequestBody, @RequestParam, @ModelAttribute

by HTT 2023. 4. 27.
@RequestBody

 

클라이언트가 전송하는 JSON 형태의 HTTP Body 내용을 MessageConverter를 통해 Java Object로 변환시켜주는 역할을 한다.

값을 주입하지 않고 값을 변환 시키므로(Reflection을 사용해 할당), 변수들의 생성자, Getter,Setter가 없어도 정상적으로할당된다.

 

 

 

@RequestParam 

 

1개의 HTTP 요청 파라미터를 받기 위해 사용한다.

@RequestParam은 필수 여부가 true이기 때문에 기본적으로 반드시 해당 파라미터가 전송되어야 한다. 전송되지 않으면 400Error를 유발할 수 있으며, 반드시 필요한 변수가 아니라면 required의 값을 false로 설정해줘야 한다.

 

 

 

@ModelAttribute 

 

HTTP Body 내용과 HTTP 파라미터의 값들을 생성자,Getter,Setter를 통해 주입하기 위해 사용한다.

값 변환이 아닌 값을 주입시키므로 변수들의 생성자나 Getter,Setter가 없으면 변수들이 저장되지 않는다.

 

 

 

 

출처 및 참고

https://dev-coco.tistory.com/163

'공부 기록' 카테고리의 다른 글

스프링 부트(Spring Boot)  (0) 2023.05.18
Django Python 강의  (0) 2023.05.11
자료구조  (0) 2023.04.25
JAVA 공부  (0) 2023.04.02
인프라(Infra)?  (0) 2023.04.01

댓글