강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

김승현님의 프로필 이미지
김승현

작성한 질문수

BindingResult 패러미터 위치 @ModelAttribute Item item 다음에 와야 하는 이유

작성

·

285

0

이 이유가 뭔가요?

@PostMapping("/add")
public String addItemV1(@ModelAttribute Item item, RedirectAttributes redirectAttributes, BindingResult bindingResult) {

이렇게 해도 잘 돌아가네요

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

BindingResult는 검증 결과를 저장하는 객체입니다. @ModelAttribute Item item 다음에 BindingResult를 위치시켜야 하는 이유는 검증 과정에서 발생한 에러 정보를 BindingResult가 받아 처리하기 때문입니다.

만약 BindingResult를 @ModelAttribute Item item 앞에 위치시킨다면 검증 과정에서 에러가 발생해도 BindingResult가 해당 정보를 받아내지 못합니다. 그렇기 때문에 BindingResult는 @ModelAttribute Item item 다음에 위치시켜야 하며, 이렇게 하면 검증 결과를 바로 확인할 수 있으므로 안정적인 코드를 작성할 수 있습니다.

감사합니다.

김승현님의 프로필 이미지
김승현

작성한 질문수

질문하기