SpringBoot
Springboot MVC 파헤치기(13) Collection Validation 적용
Springboot MVC 파헤치기(13) Collection Validation 적용
2022.05.19이전에 객체에 대해서 Validation을 적용하는 방법에 대해서 알아봤습니다. 하지만 Collection형태로 넘어올 때 Validation이 동작하지 않습니다. 따라서 이번 포스팅은 Collection으로 넘어올 때도 마찬가지로 Validation이 동작하도록 코드를 만들겠습니다. 1. Collection Test 단일 객체는 이전에 확인을 했으므로 컬렉션으로 넘겼을 Validation이 동작하는지 확인하겠습니다. Controller 메서드 private final CustomValidator customValidator; @PostMapping("/validation/v7") public ResponseEntity validationV7(@Valid @RequestBody List dto){ ret..
Springboot MVC 파헤치기(12) ControllerAdvice 알아보기
Springboot MVC 파헤치기(12) ControllerAdvice 알아보기
2022.05.17ControllerAdvice 혹은 RestControllerAdvice가 하는 일은 Controller에서 발생한 예외를 받아 처리해주는 역할을 합니다. 저희는 이것을 어노테이션을 붙여주는 것만으로 사용할 수 있습니다. 간단한 예시를 보고, 어떻게 동작하는지 살펴보겠습니다. 1. ControllerAdvice 예시 @RestControllerAdvice(basePackages = "gugus.pleco.domain") public class ControllerAdvice { @ExceptionHandler(UserDuplicatedException.class) @ResponseStatus(HttpStatus.BAD_REQUEST) public ErrorDto duplicate1(UserDuplicate..
Spring-Data-JPA [6] Index 적용하기
Spring-Data-JPA [6] Index 적용하기
2022.05.16Database의 성능을 높이기 위한 여러 가지 방법들이 있습니다.(Index, 반정 규화, 클러스터링 등등) 이번에는 Index에 대해서 알아보겠습니다. 1. Index란? Index란 추가적인 작업들을 통해서 테이블에서 데이터의 조회 속도를 향상시켜줄 수 있는 자료구조입니다. (시켜줄 수도 있다는 것은 Index를 잘못 사용했을 때 생기는 문제점입니다.) 말 그대로 Index는 색인입니다. 책이나 잡지를 볼 때 원하는 내용을 찾을 때 모든 페이지를 살펴본다면 오랜 시간이 소요됩니다. 하지만 책이나 잡지에는 색인을 추가해서 내용을 찾을 수 있도록 도움을 줍니다. 데이터베이스에 Index 또한 같은 역할을 합니다. 예시 사진을 보겠습니다. Member_Id는 정렬돼 있고, 자신만의 포인트를 가지고있습니다..
Springboot[스프링부트] Spring Security Basic(5) 동작 과정
Springboot[스프링부트] Spring Security Basic(5) 동작 과정
2022.05.13Spring Security의 Filter, Provider, Handler를 직접 구현해봤습니다. 이번에는 이러한 동작들이 실행되는 과정을 살펴보겠습니다. 위와 같은 이미지로 Security Basic(0)에서 한 번 다룬 적이 있습니다. 이번엔 어떤 과정을 거치는지 살펴보겠습니다. 저희가 Custom 하게 만든 CustomAuthenticationFilter를 포함해서 여러 가지 필터들이 있습니다. 필터들이 서로 연결돼 다음 필터를 호출하는 형태입니다. 그중에서 FilterChain을 상속받고, ThreadLocal로 ServletRequest, ServletResponse를 ApplicationFilterChain이 있습니다. 이것은 필터들의 시작점이며, 위에서 말씀드린 것처럼 필터를 호출해서 시작..
Springboot MVC 파헤치기(11) Validation 동작과정
Springboot MVC 파헤치기(11) Validation 동작과정
2022.04.23Validation은 @ModelAttribute 혹은 @RequestBody의 ArgumentResolver가 동작한 후, 검증을 진행합니다. 밑에서 알아보겠습니다. ArgumentResolver의 자세한 동작과정은 아래 링크에서 확인 부탁드립니다. https://dingdingmin-back-end-developer.tistory.com/entry/Springboot-MVC-%ED%8C%8C%ED%97%A4%EC%B9%98%EA%B8%B08-ModelAttribute-RequestParam-PathVariable-%EB%8F%99%EC%9E%91-%EA%B3%BC%EC%A0%95 Springboot MVC 파헤치기(8) @ModelAttribute, @RequestParam, @PathVariable..
Springboot MVC 파헤치기(10) Validation 유효성 검증
Springboot MVC 파헤치기(10) Validation 유효성 검증
2022.04.201. Validation이란? 데이터 값의 유효성을 검증하는 것입니다. 유효성 검증에는 다양한 유형이 있습니다. ex) email형식, password설정 시 특수문자와 길이 지정, 숫자만 입력 가능 이러한 것들을 검증합니다. Controller내에서 하나씩 검증하는 것과 BindingResult, Bean Validation, RestController를 이용할 때 사용하는 ResponseEntityExceptionHandler에 대해서 하나씩 알아보겠습니다. 일단 사용되는 Dto(데이터 전송 목적 객체)와 Controller에 대해서 살펴보겠습니다. 1. UserDto 간단하게 email과 password, age를 입력받습니다. 여기서 조건은 1. email -> email 형식만, 공백 x 2. ..