일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- HTTP
- 이벤트리스너
- sort
- 자바스크립트객체리터럴
- 인프런강의
- 인프런자바스크립트
- EntityFramework
- NPM
- 인프런인강
- slice
- 객체리터럴
- 비주얼스튜디오
- 틱택토구현
- 제로초
- 자바스크립트파라미터
- 자바스크립트함수
- .NET
- c#
- 자바스크립트
- 코딩
- 자바스크립트틱택토
- 콜백함수
- 인터넷프로토콜
- 자바스크립트recude
- 객체의비교
- Blazor
- 고차함수
- 인프런강좌
- 인프런무료강좌
- 인프런
- Today
- Total
목록스프링 MVC 2편 - 인프런 김영한/섹션 4 ,5- 검증1,2 - Validation (6)
샐님은 개발중
기존 HTML Form -> Item -> Controller ->Item -> Repository 폼 데이터 전달을 위한 별도 객체 사용 HTML Form ->ItemSaveForm ->Controller ->Item ->Respository 장점 : 등록과 수정용으로 별도의 폼 객체를 만들기 때문에 검증이 중복되지 않음. 별도 객체 이름을 일관성 있게 짓기. 1. 기존객체 원복 Item.java package hello.itemservice.domain.item; import lombok.Data; import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.ScriptAssert; import ..
데이터를 등록 할때와 수정할때 요구사항이 다를 수 있다. 등록시 -> 수정시 quantity 요구 사항 최대 : 9999 -> 수량을 무제한 변경가능 id 요구사항 필수아님 -> 수정시에는 id 값이 필수 1. BeanValidation groups 기능 사용 1. groups 생성 SaveCheck ,UpdateCheck 인터페이스 생성 2. item.java 에 검증 애노테이션에 group 속성 추가 package hello.itemservice.domain.item; import lombok.Data; import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.ScriptAssert; impo..

1. @ScriptAssert 애노테이션 활용 package hello.itemservice.domain.item; import lombok.Data; import org.hibernate.validator.constraints.Range; import org.hibernate.validator.constraints.ScriptAssert; import javax.validation.constraints.Max; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; @Data @ScriptAssert(lang ="javascript",script="_this.price * _this.quantit..

1. Bean Validation 검증 기능을 java 파일로 매번 코드로 작성하는 것은 번거롭기때문에 스프링에서 간편하게 사용하도록 표준화 한 것이 Bean Validation 이다. Bean Validation은 특정한 구현체가 아니라 검증 애노테이션과 여러 인터페이스의 모음이다. 일반적으로 사용하는 구현체는 하이버네이트 Validator 이다. 1. build.gradle 에 implementation 'org.springframework.boot:spring-boot-starter-validation' 라이브 러리 의존관계 추가 2. Item.java 에 검증 애노테이션 추가 package hello.itemservice.domain.item; import lombok.Data; import or..
1. ItemValidator class 생성 - Controller 에서 분리 package hello.itemservice.web.validation; import hello.itemservice.domain.item.Item; import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; import org.springframework.validation.Errors; import org.springframework.validation.Validator; @Component public class ItemValidator implements Validator { @Override public b..

MessageCodesResolver 란 객체명과 필드명을 조합해 메세지가 있는 지 확인 후 없으면 좀 더 범용적인 메세지를 선택하도록 하는 기능 #더 디테일한 키 값이 있을 경우 # 디텔일한 키 가 우선순위가됨 #Level 1 required.item.itemName = 상품 이름은 필수입니다. #Level1 2 required=필수 값 입니다. 동작 원리 1. regjectValue(), reject() 내부에서 MessageCodesResolver 를 사용해서 코드 생성. 2. FieldError, ObjectError 생성자에 여러 오류 코드 가짐. 3. MessageCodesResolver 를 통해 생성된 순서대로 오류 코드 보관 4. 타임리프 화면을 렌더링 할 때 th:errors 가 실행되고..