Redis는 뛰어난 성능과 유연성을 제공하는 인메모리 데이터베이스로, 다양한 애플리케이션에서 필수적으로 사용됩니다. 하지만 Spring 환경에서 Redis를 다룰 때는 두 가지 접근 방식인 RedisTemplate과 Redis Repository 중 하나를 선택해야 합니다.어떤 선택이 더 적합할까요? 이는 프로젝트의 요구사항과 Redis를 활용하는 방식에 따라 달라질 수 있습니다. RedisTemplate은 저수준 API로 세밀한 제어와 유연성을 제공하지만, 복잡한 작업과 설정이 필요합니다. 반면, Redis Repository는 고수준의 추상화를 통해 간단하고 직관적인 개발 경험을 제공하지만, 제한된 유연성과 고급 기능 부족이라는 단점이 있습니다.이번 글에서는 RedisTemplate과 Redis Re..
개요 MyBatis로 개발을 하던 중 요즘 많은 곳에서 JPA를 사용한다는 이야기를 접하게 되었다. 결과적으로 MyBatis와 달리 생산성이 어마무시하게 늘어나는 걸 보고 본격적으로 공부하고 정리해보게 되었다. 목차 1. JPA란? 2. JPA 사용 목적 3. SpringData JPA를 이용한 간단한 CRUD JPA란? JPA는 자바 진영의 ORM 기술 표준이다. 아주 오래전 EJB를 사용하던 때 한 회사원이 EJB의 복잡성과 어려움에 견디지 못하고 퇴근하고 Hibernate를 만들었고 이걸 접한 JAVA에서 Hibernate 담당자들을 데려와 여러 개발자와 함께 JPA 표준을 만들었다는 이야기가 있다. 중요한건 JPA는 하나의 명세일뿐 JPA를 기반으로 Hibernate, OpenJPA, Eclips..
1. JWT 란?사용자의 요청에 따라 서버에서 만들어진 암호화된 토큰을 반환하여 사용자 측에 저장이후 토큰을 사용하여 인증과정을 진행 2. JWT 구조- Header-> 어떤 타입의 데이터 어떤 알고리즘을 사용- Payload(Claims) - Signature-> 데이터와 토큰이 위변조 되지 않았음을 증명 3. Spring Security + JWT 구현Spring Security에서 알아두어야 할 두가지 개념 - Authentication (인증)Authentication은 주체(principal)의 신원을 증명하는 과정입니다. - Authorization (인가) Authorization은 인증을 마친 사용자에게 권한을 부여하여 특정 리소스에 접근할 수 있도록 허가하는 과정입니다. 스프링 ..