# BindingResult

25개의 포스트

V2.7 Validator 분리

지금까지 구현한 V2 의 method 는비지니스 로직보다 검증로직의 길이가 더 길어 유지보수성이 매우 떨어진다.검증만 담당하는 별도의 객체를 생성해 Controller 의 검증 로직을 분리시킬 수 있다.@Component 로 Spring Bean 으로 등록Validat

3일 전
·
0개의 댓글
·

오류코드 설계

오류코드를 너무 세밀하게 정리하면 클라이언트에게 디테일한 메시지를 전달할 수 있지만 범용성이 낮아진다.반대로 단순하게 정리하면 범용성이 좋아 여러곳에서 사용할 수 있지만,메시지를 세밀하게 작성하기 어려워진다.실무에서는 기본적으로 단순하게 메시지를 정리하다가,세밀하게 작

4일 전
·
0개의 댓글
·

V2.4 rejectValue 와 reject

🔗 요구사항 확인addError 의 첫번째 Param 은 BindingResult 의 Object 값을 입력하는 자리이다.하지만 사실 BindingResult 는 바인딩 해야할 Object 를 이미 알고있다.BindingResult 가 꼭 대상으로 하는 Object

4일 전
·
0개의 댓글
·

V2.2. FieldError 와 ObjectError

🔗 요구사항 확인지난 포스트까지 구현하면 검증에 실패할경우 클라이언트에게 문제점을 표시해줄 수 있지만,클라이언트가 입력했던 data 들이 전부 지워지는 문제가 있었다.FieldError 의 생성자는 기존에 사용한 생성자 외에 다른 생성자도 존재한다.두번째 세번째 Pa

4일 전
·
0개의 댓글
·
post-thumbnail

V2.1. type 에러 확인

🔗 요구사항 확인BindingResult 를 적용하면 Controller 에 별도의 로직을 추가하지 않아도 type 을 잘못 요청할경우 기본적으로 에러메시지를 출력해준다.Entity 나 DTO 에서 type 문제가 발생할경우 에러를 발생시키지 않고 BindingRes

4일 전
·
0개의 댓글
·

V2.1. Binding Result 적용 하기

🔗 요구사항 확인BindingResultSpring 에서 제공하는 validation 라이브러리Map 의 기능을 BindingResult 이 대신할 수 있으므로 Map 은 삭제한다.검증을 통과하지 못할경우 BindingResult 에 error 를 추가해준다.Mode

4일 전
·
0개의 댓글
·

spring Security 4. - log-in 접근 권한

클라이언트의 로그인 여부와 로그인 했을경우 정보를 조회하는 방법목표Answer 를 작성하면 SiteUser 의 정보를 조회해 로그인 회원일경우 Answer 에 Username 을 표시하는 기능을 구현log-out 상태로 게시물 작성을 시도하면 log-in 페이지로 이동

7일 전
·
0개의 댓글
·

검증 - BindingResult

공식 DocsSpring에서 제공하는 Field Type, 프로그래머가 직접 작성한 FieldError, ObjectError를 한데 묶어(List) Model에 주입시켜주는 통합 인터페이스이다.Model에 주입이 되어 Thymeleaf 같은 뷰 템플릿에 넘겨주어서 사

2023년 2월 19일
·
0개의 댓글
·

23.02,17

자바 표준 검증 어노테이션이다. 컨트롤러의 메소드에 작성한다. 컨트롤러에서만 동작다른 계층에서의 검증이 필요할 때는 @Validated와 결합해야 한다. @Valid에 의한 예외 클래스는 MethodArgumentNotValidException이다.스프링에서 제공하는

2023년 2월 18일
·
0개의 댓글
·
post-thumbnail

스프링MVC 2(1)

messages.properties 라는 메시지 관리용 파일을 만들고 사용item=상품item.itemName=상품명item.itemPrice=상품가격messages_en.properties, messages_ko.properteis 등국제화가 적용되지 않을 경우 기본

2023년 2월 14일
·
0개의 댓글
·

오류 코드와 메시지 처리6

검증 오류 코드는 다음과 같이 2가지로 나눌 수 있다.개발자가 직접 설명한 오류 코드 -> rejectValue()를 직접 호출스프링이 직접 검증 오류에 추가한 경우 (주로 타입 정보가 맞지 않음)price 필드에 문자 "A"를 입력해보자.로그를 확인해보면 Bindin

2023년 1월 27일
·
0개의 댓글
·

오류 코드와 메세지 처리 5

핵심은 구체적인 것에서! 덜 구체적인 것으로!MessageCodesResolver는 required.item.itemName처럼 구체적인 것을 먼저 만들어주고, required처럼 덜 구체적인 것을 가장 나중에 만든다.이렇게 하면 앞서 말한 것 처럼 메세지와 관련된 공

2023년 1월 27일
·
0개의 댓글
·

오류 코드와 메세지처리4

우선 테스트 코드로 MessageCodesResolver를 알아보자.검증 오류 코드로 메세지 코드들을 생성한다MessageCodesResolver 인터페이스이고 DefaultMessageCodesResolver는 기본 구현체 이다.주로 다음과 함께 사용ObjectErr

2023년 1월 27일
·
0개의 댓글
·

BindingResult2

스프링이 제공하는 검증 오류를 보관하는 객체이다. 검증 오류가 발생하면 여기에 보관하면 된다.BindingResult가 있으면 @ModelAttribute에 데이터 바인딩 시 오류가 발생해도 컨트롤러가 호출 된다.ex) @ModelAttribute에 바인딩 시 타입 오

2023년 1월 21일
·
0개의 댓글
·

Spring Boot - 사용자 요청 방식

**❗ 사용자 ( URI 리소스 ) 와 서버 ( Spring 컨테이너 ) 가 서로 데이터를 주고 받기 위해 사용되는 기법들 ** 📌 PathVariable 경로변수 🤔 바인딩 이란 ? Spring 사용자 관점에서 사용자가 입력한 값을 어플리케이션 도메인 객체에

2023년 1월 9일
·
0개의 댓글
·
post-thumbnail

BindingResult

BindingResult는 검증 오류를 보관하는 객체이다. BindingResult를 보관하는 방법은 세가지가 있다.@ModelAttribute 객체에 타입 오류 등으로 바인딩이 실패하는 경우예) 사용자가 정수형 필드에 문자를 넣었을 경우바인딩이 실패하면 스프링이 Fi

2023년 1월 5일
·
0개의 댓글
·

[SPRING] 5장 컨트롤러 요청 처리

MemberController.java / registerForm.jsp주요 매개 변수Model 이동 대상에 전달할 데이터를 가지고 있는 인터페이스RedirectAttributes 리다이렉트 대상에 전달할 데이터를 가지고 있는 인터페이스자바빈즈 클래스

2022년 11월 29일
·
0개의 댓글
·

[Spring] 스프링이 제공하는 검증 오류 처리 방법, BindingResult

스프링이 제공하는 검증 오류 처리 방법 BindingResult BindingResult bindingRsult 파라미터의 위치는 @ModelAttribute Item item 다음에 와야한다. BindingResult는 Model에 자동으로 포함된다. [FieldE

2022년 11월 14일
·
0개의 댓글
·
post-thumbnail

에러메세지 - BindingResult

회사를 다니면서 제일 먼저 배운건 JPA 였다. 기존 프로젝트를 할때에는 xml를 통해서 db에 접근하고 CRUD를 했었는데 최근에는 많이 쓰이지 않는 기술이라고 한다. 그래서 JPA를 공부하게 되었고 기존의 프로젝트를 jpa버전으로 수정하면 좋을거같아 수정과정을 기록

2022년 8월 25일
·
0개의 댓글
·

[Spring Boot] 유효성 검사 BindingResult

우선 BindingResult는 원래 Spring에서 제공하는 error와 관련된 interface이다. 즉, BindingResult는 검증 오류가 발생할 경우 오류 내용을 보관하는 스프링 프레임워크에서 제공하는 객체이다. BindingResult는 데이터 바인딩

2022년 4월 21일
·
0개의 댓글
·