일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Exception
- JPQL
- springdatajpa
- 인프런
- http
- Thymeleaf
- 스프링 핵심 원리
- transaction
- 스프링 핵심 기능
- 알고리즘
- AOP
- 그리디
- db
- SpringBoot
- Greedy
- 김영한
- spring
- java
- jpa
- Spring Boot
- 자바
- QueryDSL
- Android
- 스프링
- JDBC
- 백준
- Proxy
- pointcut
- Servlet
- kotlin
- Today
- Total
목록@Validated (3)
개발자되기 프로젝트
동일한 Model Object를 등록할 경우, 수정할 경우 validation을 다르게 적용해보자. 1. Validation 분리하는 방법 BeanValidation의 groups 사용 ItemSaveForm, ItemUpdateForm 같은 폼 전송을 위한 별도의 객체 사용(DTO?) 2. Bean Validation Groups BeanValidation Groups기능을 활용하면 검증 기능을 Group으로 나누어 적용이 가능. 3. Bean Validation Groups기능 적용 3.1 저장용 group 생성 interface 생성 public interface SaveCheck { } 3.2 수정용 group 생성 interface 생성 public interface UpdateCheck { }..
1. Spring적용을 해보자. 기존에 등록한 ItemValidator를 제거! 어? 그래도 검증기 돌아간다.? 2. Spring MVC는 어떻게 Bean Validation 사용? Spring Boot가 spring-boot-starter-validation 라이브러리를 넣으면 자동으로 Bean Validator를 인지하고 스프링에 통합함. Spring Boot는 자동으로 글로벌 Validator를 등록한다. LocalValidatorFactoryBean 을 글로벌 Validator로 등록 이 Validator는 @NotNull 같은 @Annotation을 보고 검증을 수행 글로벌 Validator가 적용되어 있기 때문에, Validator를 사용하기 위해서는 원하는 target 앞에 @Valid , ..
스프링이 Validator 인터페이스를 별도로 제공하는 이유는 체계적으로 검증 기능을 도입하기 위해서임. 그런데 앞에서는 검증기를 직접 불러서 사용했음. 그런데 Validator 인터페이스를 사용해서 검증기를 만들면 스프링의 추가적인 도움을 받을 수 있음. 1. WebDataBinder를 통해 사용 WebDataBinder 는 스프링의 파라미터 바인딩의 역할을 해주고, 검증 기능도 내부에 포함한다. 2. WebDataBinder 적용 2.1 Controller @InitBinder 적용, init() 해당 메서드에 WebDataBinder를 넘겨주고, WebDataBinder에 validator를 넣어준다. 이렇게 되면 Controller가 호출될 때마다 WebDataBinder를 생성한다. 이렇게 We..