SpringBoot
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. ..
Springboot Cache 사용기[5] Redis 이용한 Cache 사용
Springboot Cache 사용기[5] Redis 이용한 Cache 사용
2022.04.16이전 포스팅에서 Redis의 사용 방법을 알아봤습니다. 이번에는 Redis로 Cache를 사용해보겠습니다. Local Memory Cache는 Memory가 초기화된다면 데이터가 다 삭제되지만, Redis는 expires를 설정하거나 직접 삭제하지 않는 이상 데이터는 삭제되지 않습니다. 따라서 스냅숏 같이 개발자의 원하는 시점의 데이터를 불러와 Cache로 저장할 수 있습니다. 1. Redis CacheManager SimpleCacheManager를 사용하지 않고, Redis의 CacheManager를 정의하여 사용합니다. @Bean public CacheManager redisCacheManager(){ RedisCacheConfiguration redisCacheConfiguration = Redi..
Springboot Cache 사용기[4] Redis 사용하기
Springboot Cache 사용기[4] Redis 사용하기
2022.04.10Redis Cache를 사용하기 위해선 먼저 Redis를 사용할 줄 알아야 합니다. 그래서 하나씩 만들어보겠습니다. Redis는 Nosql DB입니다. 영속성을 지원하며, In memory DB이므로 속도가 빠른 장점으로 Cache서버의 DB로서 많이 사용됩니다. 1. 디펜던시 추가 implementation 'org.springframework.boot:spring-boot-starter-data-redis' build.gradle에 위의 디펜더 시를 추가해줍니다. 2. RedisConfig @Configuration @RequiredArgsConstructor @EnableRedisRepositories public class RedisConfig { private final RedisProperti..
Springboot Cache사용기[3] Local-Memory-Cache 동작 과정
Springboot Cache사용기[3] Local-Memory-Cache 동작 과정
2022.04.02이전 포스팅에서 SimpleCacheManager를 이용해서 Cache가 동작하는 것을 구현해봤습니다. 그렇다면 이런 CacheManager가 동작되는데 어떠한 과정이 있는지 살펴보기 위해선 먼저 Proxy를 알아야 합니다. 1. Proxy란? Proxy란 대리자라는 의미를 가지고 있습니다. 예를 들어서 나는 운전면허가 있어서 운전을 할 수 있지만, 누군가에게 대신 운전을 시킬수도 있습니다. 여기서 대신 운전을 해주는 사람이 대리자이며, 영어로 Proxy라고 합니다. 개발자는 10개의 객체에 동일한 기능을 가진 프록시를 적용하려 한다면, 각각의 객체에 대한 부가 기능을 가진 프록시를 모두 정의했어야 했습니다 . 하지만 JDK 동적 프록시와 CGLIB를 이용하면 같은 부가 기능 로직을 한 번만 정의하면 모..
Springboot Cache 사용기[2] Local-Memory-Cache
Springboot Cache 사용기[2] Local-Memory-Cache
2022.03.30앞 시간에서 Cache란 무엇이고, Springboot에서 어떠한 Cache가 있는지 알아봤습니다. 이번에는 Local-Memory-Cache를 사용하는 방법에 대해서 알아보겠습니다. Local-Memory-Cache 1. Local Memory에 Cache 데이터를 저장하고, 조회한다. 2. 서버가 꺼지면 Cache 데이터들은 삭제된다. 3. 기본 전략으로 @EnableCache만 붙여주거나, 간단하게 Custom CacheManager를 등록해서 사용 가능하다. 1. 프로젝트 세팅 Cache의 사용법을 알아보는 포스팅입니다. 밑에 진행하는 예제가 Cache로 사용하기 적합하지 않은 데이터일 수 있습니다. [디펜더 시 추가] dependencies { implementation 'org.springfr..