- Spring MVC 마스터하기 Validation 12022년 05월 08일
- starryeye
- 작성자
- 2022.05.08.:43
컨트롤러는 HTTP 요청이 정상인지 검증할 의무가 있다.
addForm 컨트롤러 위 예시와 같이, /add URL로 addFrom controller를 호출하면 빈 Item 객체를 model 에 넣고 /addFrom 뷰를 보여주는 이유?
(참고, /addForm 뷰가 호출되어도 웹브라우저 상에서 컨트롤러가 호출한 /add 라는 URL은 변하지 않는다.)
addForm 뷰 /addForm 뷰에서는 위와 같이 th:object 로 addForm 컨트롤러에서 빈 Item 객체를 출력하고있다
(비어있기 때문에 아무것도 출력하지 않음)
여기서는 의미가 없지만..
만약에 해당 addForm 뷰에서 HTTP form 방식으로 post 등록 컨트롤러를 호출(값을 채우고 등록버튼 누르기)했을 때,
등록할 값들이 invalid 하다면...
addItem 컨트롤러 add등록을 하지않고 다시 addForm 뷰를 불러줘야한다.
(위 예시와 같이 invalid 한 값이 있어서 다시 addForm 뷰로 가야할 상황이 있다.)
addForm 뷰에서 invalid 한 값들을 채워서 addItem 컨트롤러를 호출하면, 그 invalid 값들이 addItem 파라미터 @ModelAttribute item 객체로 들어오게 되며, @ModelAttribute 파라미터로 넘어온 객체는 자동으로 model 객체로 넣어지고 그래서 addForm 에서 이번엔 비어있는게 아니라 채워진것으로 뷰를 재사용 할 수 있다.
(웹 브라우저에서 invalid 값을 넣어도.. invalid 값들을 그대로 보여줄 수 있다.)
'Spring > MVC' 카테고리의 다른 글
Spring MVC 마스터하기 Validation 3 (0) 2022.05.08 Spring MVC 마스터하기 Validation 2 (0) 2022.05.08 Spring MVC Redirect, PRG (0) 2022.05.06 Spring MVC 마스터하기 4 (0) 2022.04.24 Spring MVC 마스터하기 3 (응답 부분) (0) 2022.04.22 다음글이전글이전 글이 없습니다.댓글