Spring Data JPA |
데이터베이스와의 상호작용을 추상화하여 CRUD 기능 및 페이징/정렬 기능을 손쉽게 구현할 수 있도록 함. |
Spring Security |
특정 역할(USER, MANAGER, ADMIN)만 API를 호출할 수 있도록 권한 관리를 수행. |
Swagger |
소스 코드 기반으로 자동으로 API 문서를 생성하여 개발 및 유지보수를 용이하게 함. |
JWT |
토큰 기반 인증 방식을 사용하여 세션 관리 없이 API 인증을 처리할 수 있도록 함. |
Redis |
로그인 시도 횟수, 토큰 등 빠른 처리가 필요한 일시적 데이터를 관리하며, TTL 지원을 통해 자동 만료 기능 제공. |
Querydsl |
동적 쿼리 작성이 용이하며, 타입 안정성이 보장됨. BooleanBuilder를 활용하여 유연한 검색 조건 조합 가능. |
Flyway |
데이터베이스 스키마 버전 관리를 통해 마이그레이션을 안정적으로 수행할 수 있도록 함. |
Testcontainers |
데이터베이스와의 통합 테스트를 위한 경량 컨테이너 환경을 제공하여 테스트 신뢰성을 향상. |
Apache Tika |
업로드된 파일의 형식을 검증하여 보안성을 강화하고, 잘못된 형식의 파일을 사전에 차단. |