validation
-
[SpringBoot] Errors 인터페이스의 구현체와 에러 메시지 저장 위치Back-end/TIL 2022. 4. 4. 16:13
📌 상황 @PostMapping("/user/sign-up") public String userSignUp(@Valid UserDto.UserSignUpReqDto userSignUpReqDto, Errors errors, Model model) { //회원가입 실패 if (errors.hasErrors()) { return "user/sign-up"; } //회원가입 성공 (로그인 완료 페이지로 리다이렉션) return "user/login"; } @Valid에 의해 발생한 Validation Error는 Errors 인터페이스 타입의 객체에 담긴다. 해당 객체에 Error가 존재하는지 체크하여 유효성 검사 처리를 할 수 있다. 📌 Errors는 인터페이스인데, 그럼 해당 인터페이스의 구현체는 무엇일까..
-
[SpringBoot] 서버에서 사용자 입력 값과 Request Body를 Validation하는 2가지 방법Back-end/TIL 2022. 4. 4. 15:45
📌 Validation이 필요한 이유 의도적으로 이상한 값으로 서버에 요청을 보낼 수 있기 때문에 프론트와 서버에서 둘다 해줘야 한다. 회사 코드를 보니 이메일이나 전화번호 입력 값에 대한 형식을 모두 서버에서도 체크해주었다. (기존에 사이드 프로젝트 할 때는 '입력값은 프론트에서 유효성 검사 해주니까 괜찮겠지' 하고 넘어갔었는데 반성하게 되었다. 다음 사이드 프로젝트에서는 입력값에 대한 서버 유효성 검사도 추가해야겠다) 그렇다면, 어차피 서버에서도 유효성 검사를 해주는데 프론트에서도 하는 이유는? - 서버 부하를 줄여주고, 사용자의 편의성을 위해서이다. - 서버에서의 유효성 검사는 프론트에서의 유효성 검사보다는 느릴 수 밖에 없다. 📌 준비 의존성 추가 dependencies { implementati..