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

보물섬님의 프로필 이미지
보물섬

작성한 질문수

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

회원 등록

비어있는 memberForm 객체를 전달하는 이유가?

작성

·

192

1

안녕하세요.

String createForm(Model model) 에서 Model에 비어있는 memberForm 을 넣어주는 이유가 validation 을 해주기 때문이라고 하셨는데

어짜피 스프링쪽 validation 은 서버쪽으로 데이터가 왔을때 해주는거라 딱히 의미가 없을거 같아 궁금해서 질문드립니다.

제가 생각하기에 비어있는 memberFrom을 넣어서 얻는 이득은 createMemberForm.html 에서 memberForm을 쓸데 null 관련 로직을 짜야 하는것 말곤 다른 이유를 찾기 힘들어서요.

물론 위의 null 관련부분이 꽤 귀찮은 작업같긴 합니다만 혹시 제가 모르고 있는 부분이 또 있을수도 있을거 같아서 질문 드려봅니다.

주말 잘보내세요~

답변 1

3

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 보물섬님

여기에서 말한 validation은 조금 다른 의미의 validation입니다.

(제가 다른 단어를 선택했어야 했는데, 혼란스러운 단어를 선택했네요)

여기에서 말한 검증이라는 뜻은 이렇게 사용하면 viewTemplate에서 form을 구성할 때 잘못된 이름을 넣으면 오류가 발생한다는 뜻입니다.

예를 들어서 th:field=*{namemm} 처럼 오타를 넣으면 뷰 템플릿이 로딩될 때 바로 오류를 발견할 수 있습니다.

그리고 이렇게 사용하는 이유가 한가지 더 있는데, 일관성이라는 측면이 있습니다.

1. 등록폼을 로딩할 때와 2. 등록에 실패했을 때 다시 같은 뷰로 돌아갈 때에 같은 뷰 템블릿을 그대로 재사용할 수 있습니다.

감사합니다.

보물섬님의 프로필 이미지
보물섬

작성한 질문수

질문하기