반응형 valid4 @Valid 를 Dto 에 적용하기 Dto에 Valid를 사용하여 RequestBody에서 받기 위해서는 이전에 다룬 글이 있다.자세한 내용은 아래 참고 포스팅 참고 바란다. 하지만 request로 받을때 말고 Dto를 사용하여 객체를 새롭게 만들 경우엔 어떻게 검증을 할지 아래 예제 코드를 보면서 바로 설명하겠다.CustDto dto = CustDto.builder() .address("Seoul") .phone("012345") .name("thenicesj") .build();우선 선언하는 곳에서 Builder 는 평상시랑 동일하게 코드를 짜주면 되고,Dto 클래스에서 Builder 를 아래와 같이 구현해두면 된다...이상 생략@NoArgsConstructor@Datapublic class CustDto .. 2024. 8. 18. [Error] An Errors/BindingResult argument is expected to be declared immediately after the model attribute, the @RequestBody or the @RequestPart arguments 아래와 같은 에러를 만났다.An Errors/BindingResult argument is expected to be declared immediately after the model attribute, the @RequestBody or the @RequestPart arguments 원인은 Valid 를 사용할 경우 Error 나 BindingResult 를 잡을수가 있는데,Valid 바로 다음에 Errors 나 BindingResult 가 나와야한다.Valid 관련해서는 아래 참고 포스팅 참고 바란다. 두 코드를 보면 올바른 코드와 잘못된 코드를 확인 가능하다.(스택오버플로우 사이트 참고)올바른 코드@RequestMapping(value = "/catowners", method = RequestMe.. 2024. 8. 17. RequestParam 에서 @Valid 사용 이전 포스팅에서 @Valid annotation 을 사용하여 데이터 검증을 하는 법을 알아보았다.(참고 포스팅 참고) 하지만 해당 방법은 RequestBody 일 경우 사용이 가능하고RequestParam 으로 사용하는 방법을 정리하려고 한다. controller 에서 사용할 경우 아래 예제와 같이 사용하면 간단히 해결 가능하다...이상 생략public ResponseEntity testMethod( @RequestParam @Pattern (regexp = "010[-]?\\d{3,4}[-]?\\d{4}$") String phoneNumber, @RequestParam @Email String email ) {..이하 생략 Pattern을 적용해도 가능하고 기타 어노테이션 사용도 가능하.. 2024. 8. 11. @Valid annotation (BindingResult, Error)(유효성 검사) 지난번에 다뤘던 포스팅 중에서 not null관련 포스팅도 존재하고, jackson 관련 포스팅도 존재한다. 둘의 공통점은 dto 등에서 변수에 설정을 걸어주는것이다. 하지만 이 둘 말고도 또다른 annotation이 존재하는데 그것들에 대해서 잠깐 소개 하고 valid annotation으로 한번에 유효성 검증을 하는 법에 대해서 소개해보려고 포스팅을 작성한다. 위에 두가지 경우에 대해서는 아래 참고 포스팅을 참고해보길 바란다. 오늘 사용할 annotation 관련은 import javax.validation.constraints.*; 임포트를 따른다. Anotation 제약조건 @Size(min=,max=) 문자열, 배열등의 크기가 만족하는가? @Pattern(regex=) 정규식을 만족하는가? @M.. 2022. 8. 22. 이전 1 다음 반응형