@Valid Exception Handling과 Response 코드 개선 Spring에서 제공하는 @RestControllerAdvice, @ExceptionHandler를 활용하여 API 예외 처리를 하였다. 여기서 중요한 점은, 기본적인 생성자 대신 정적 팩터리 메서드를 활용했기 때문에 입력 매개변수에 따라 유연하게 ErrorResponse 객체를 반환할 수 있다는 점이다. of라는 정적 팩터리 메소드들은 여러가지 상황에 대응할 수 있다. 이는 에러 코드가 도... 정적 팩터리 메서드@RestControllerAdvice@ValidAPI Response@ExceptionHandler예외처리@ExceptionHandler 호기심천국 (상태코드, 응답 메시지 등이 포함될 수 있다.) supports()는 이 검증기가 검증할 수 있는 오브젝트 타입인지 확인해주는 메소드로 이 메소드를 통과한 경우에만 validate()가 호출된다. : rejectValue() 메소드를 이용해 추가된 에러 발생할 경우 true 반환 : rejectValue() 메소드 이용해 추가한 특정 필드의 에러가 존재할 경우 true 반환 그래서 해답은 ... JavamockoverrideBindingResult@RequestParamSpringbootvalidator@ValidTILRequestBodyoverloadingexceptiongsonResponseEntityRestTemplate@ExceptionHandler@ExceptionHandler 유효성 검사 @Valid @Validated 웹에서 회원등록을 위해 입력을 한다거나, 다양한 상황에서 입력을 할 때 제약조건들이 존재한다. 예를 들어 반드시 값을 입력 해야된다거나, 띄어쓰기는 허용하지 않는다 거나 등 여러 제약조건 들이 있을 수 있다. 그럴때 사용하는 것이 바로 @Valid, @Validated 에노테이션이다 🔗 pom.xml 의존성 추가 💡 유효성 검사 항목 선정 (제약조건 @NotNull, @NotBlank, @N... @Valid@Valid @Valid와 @NotNull @Valid 어노테이션이란? @Valid는 제약조건을 달아놓은 속성에 대해 유효성 검사를 하는 어노테이션이다. 개인적으로 Controller 클래스 내의 메소드에서 DTO를 인자로 받을 때 아래와 같이 적용하곤 하였다. ex) UserDto.java UserController.java 하지만, 여기서 지금까지 몰랐던 사실이 있었다. @Valid가 적용이 안되는 경우 JPA를 사용하면서 @Em... @NotNullSpring boot@Valid@NotNull
Exception Handling과 Response 코드 개선 Spring에서 제공하는 @RestControllerAdvice, @ExceptionHandler를 활용하여 API 예외 처리를 하였다. 여기서 중요한 점은, 기본적인 생성자 대신 정적 팩터리 메서드를 활용했기 때문에 입력 매개변수에 따라 유연하게 ErrorResponse 객체를 반환할 수 있다는 점이다. of라는 정적 팩터리 메소드들은 여러가지 상황에 대응할 수 있다. 이는 에러 코드가 도... 정적 팩터리 메서드@RestControllerAdvice@ValidAPI Response@ExceptionHandler예외처리@ExceptionHandler 호기심천국 (상태코드, 응답 메시지 등이 포함될 수 있다.) supports()는 이 검증기가 검증할 수 있는 오브젝트 타입인지 확인해주는 메소드로 이 메소드를 통과한 경우에만 validate()가 호출된다. : rejectValue() 메소드를 이용해 추가된 에러 발생할 경우 true 반환 : rejectValue() 메소드 이용해 추가한 특정 필드의 에러가 존재할 경우 true 반환 그래서 해답은 ... JavamockoverrideBindingResult@RequestParamSpringbootvalidator@ValidTILRequestBodyoverloadingexceptiongsonResponseEntityRestTemplate@ExceptionHandler@ExceptionHandler 유효성 검사 @Valid @Validated 웹에서 회원등록을 위해 입력을 한다거나, 다양한 상황에서 입력을 할 때 제약조건들이 존재한다. 예를 들어 반드시 값을 입력 해야된다거나, 띄어쓰기는 허용하지 않는다 거나 등 여러 제약조건 들이 있을 수 있다. 그럴때 사용하는 것이 바로 @Valid, @Validated 에노테이션이다 🔗 pom.xml 의존성 추가 💡 유효성 검사 항목 선정 (제약조건 @NotNull, @NotBlank, @N... @Valid@Valid @Valid와 @NotNull @Valid 어노테이션이란? @Valid는 제약조건을 달아놓은 속성에 대해 유효성 검사를 하는 어노테이션이다. 개인적으로 Controller 클래스 내의 메소드에서 DTO를 인자로 받을 때 아래와 같이 적용하곤 하였다. ex) UserDto.java UserController.java 하지만, 여기서 지금까지 몰랐던 사실이 있었다. @Valid가 적용이 안되는 경우 JPA를 사용하면서 @Em... @NotNullSpring boot@Valid@NotNull