오늘은 간단하게 RequestBody, RequestParam, ModelAttribute의 차이점에 대해 간략하게 알아보겠다.
@RequestBody
클라이언트가 전송하는 JSON 형태의 HTTP Body내용을 MessageConverter를 통해 Java Object로 변환시켜 주는 역할을 합니다.
--> 값을 주입하지 않고 값을 변환 시키므로(Reflection을 할당), 변수들의 생성자, Getter, Setter가 없어도 정상적으로 할당된다.
@RequestParam
1개의 HTTP 요청 파라미터를 받기위해 사용합니다. @RequestParam은 필수 여부가 True이기 때문에, 기본적으로
반드시 해당 파라미터가 전송 되어야 합니다. 전송되지 않으면 400 Error를 유발할 수도 있고,
반드시 필요한 변수가 아니라면 required의 값을 false로 설정해줘야 합니다.
@ModelAttribute
HTTP Body내용과 HTTP 파라미터의 값들을 생성자, Getter, Setter를 통해 주입하기 위해 사용합니다.
반응형
'프로그래밍 상식' 카테고리의 다른 글
[Jeus] Jeus에 대하여 (0) | 2023.04.04 |
---|---|
[자바 상식] Spring MVC에 대하여 (0) | 2023.03.23 |
[자바 상식] VO,BO,DAO,DTO에 대해 (0) | 2023.03.22 |
[웹 크롤링] Selenium과 BS4 (2) | 2023.03.22 |
컴파일 VS 인터프리터에 대해 알아보자 (0) | 2023.03.20 |