Spring Data 프로젝트의 주요 목표는 비관계형 데이터베이스, 맵 축소 프레임워크 및 클라우드 기반 데이터 서비스와 같은 새로운 데이터 액세스 기술을 사용하는 Spring 기반 애플리케이션을 더 쉽게 구축하는 것입니다.
이 모듈은 Redis 스토어와의 통합을 제공합니다. 또한 Valkey가 Redis와 대체로 호환되는 한 Valkey와 함께 작동하도록 테스트되었습니다.
여러 Redis 드라이버(Lettuce 및 Jedis)에 대한 저수준 추상화로서의 연결 패키지입니다.
Redis 드라이버 예외에 대한 Spring의 이식 가능한 데이터 액세스 예외 계층으로의 예외 변환
다양한 Redis 작업 수행, 예외 변환 및 직렬화 지원을 위한 높은 수준의 추상화를 제공하는 RedisTemplate
입니다.
Pubsub 지원(예: 메시지 기반 POJO를 위한 MessageListenerContainer)
Redis Sentinel 및 Redis 클러스터 지원.
Lettuce 드라이버를 사용하는 반응형 API입니다.
JDK, 문자열, JSON 및 Spring 객체/XML 매핑 직렬 변환기.
Redis 위에 JDK 컬렉션을 구현합니다.
원자 카운터 지원 클래스.
정렬 및 파이프라이닝 기능.
SORT, SORT/GET 패턴 및 반환된 대량 값에 대한 전용 지원입니다.
Spring 3.1 캐시 추상화를 위한 Redis 구현.
@EnableRedisRepositories
사용한 사용자 정의 파인더 메소드 지원을 포함한 Repository
인터페이스의 자동 구현.
리포지토리에 대한 CDI 지원.
이 프로젝트는 Spring Code of Conduct를 따릅니다. 참여함으로써 귀하는 본 행동 강령을 준수해야 합니다. 용납되지 않는 행동을 [email protected]로 보고해 주세요.
다음은 Java에서 Spring Data Redis를 사용하는 애플리케이션의 간단한 티저입니다.
public class Example {
// inject the actual template
@ Autowired
private RedisTemplate < String , String > redisTemplate ;
// inject the template as ListOperations
// can also inject as Value, Set, ZSet, and HashOperations
@ Resource ( name = "redisTemplate" )
private ListOperations < String , String > listOps ;
public void addLink ( String userId , URL url ) {
listOps . leftPush ( userId , url . toExternalForm ());
// or use template directly
redisTemplate . boundListOps ( userId ). leftPush ( url . toExternalForm ());
}
}
@ Configuration
class ApplicationConfig {
@ Bean
public RedisConnectionFactory redisConnectionFactory () {
return new LettuceConnectionFactory ();
}
}
Maven 종속성을 추가합니다.
< dependency >
< groupId >org.springframework.data</ groupId >
< artifactId >spring-data-redis</ artifactId >
< version >${version}</ version >
</ dependency >
다가오는 주요 버전의 최신 스냅샷을 원한다면 Maven 스냅샷 저장소를 사용하고 적절한 종속성 버전을 선언하세요.
< dependency >
< groupId >org.springframework.data</ groupId >
< artifactId >spring-data-redis</ artifactId >
< version >${version}-SNAPSHOT</ version >
</ dependency >
< repository >
< id >spring-snapshot</ id >
< name >Spring Snapshot Repository</ name >
< url >https://repo.spring.io/snapshot</ url >
</ repository >
스프링 데이터에 문제가 있나요? 우리는 기꺼이 도와드리겠습니다!
참조 문서와 Javadoc을 확인하세요.
Spring 기본 사항 알아보기 - Spring Data는 Spring Framework를 기반으로 구축됩니다. spring.io 웹 사이트에서 다양한 참조 문서를 확인하세요. Spring을 막 시작했다면 가이드 중 하나를 사용해 보세요.
업그레이드하는 경우 "새롭고 주목할만한" 기능에 대한 릴리스 노트를 확인하세요.
질문하기 - spring-data-redis
태그가 붙은 질문이 있는지 stackoverflow.com을 모니터링합니다. Gitter에서 커뮤니티와 채팅할 수도 있습니다.
github.com/spring-projects/spring-data-redis에서 Spring Data Redis의 버그를 보고하세요.
Spring Data는 버그 및 기능 요청을 기록하기 위해 문제 추적 시스템으로 Github를 사용합니다. 문제를 제기하려면 아래 권장 사항을 따르십시오.
버그를 기록하기 전에 이슈 트래커를 검색하여 누군가 이미 문제를 보고했는지 확인하세요.
이슈가 아직 존재하지 않는 경우 새 이슈를 생성합니다.
이슈 리포트를 통해 최대한 많은 정보를 제공해 주시기 바라며, 사용 중인 Spring Data의 버전, JVM 버전, Stacktrace 등을 알고 싶습니다.
코드를 붙여넣거나 스택 추적을 포함해야 하는 경우 Markdown 코드 펜스 ```를 사용하세요.
가능하다면 문제를 복제하는 테스트 사례나 프로젝트를 만들어 보십시오. 코드 또는 코드가 포함된 압축 파일에 대한 링크를 첨부하세요.
Spring Data(repo.spring.io의 바이너리)를 사용하기 위해 소스에서 빌드할 필요는 없지만, 가장 뛰어난 최신 기능을 시험해보고 싶다면 Maven 래퍼를 사용하여 Spring Data를 쉽게 빌드할 수 있습니다. 또한 JDK 17 이상이 필요 make
. 로컬 빌드 환경은 Makefile
내에서 관리되어 다양한 구성(독립 실행형, Sentinel, 클러스터 등)으로 Redis를 다운로드, 빌드 및 스핀업합니다.
$ make test
앞의 명령은 전체 빌드를 실행합니다. make start
, make stop
및 make clean
명령을 사용하여 환경을 직접 제어할 수 있습니다. 이는 지속적인 서버 재시작을 피하려는 경우에 유용합니다. 모든 Redis 인스턴스가 시작되면 IDE 또는 전체 Maven 빌드에서 테스트를 실행할 수 있습니다.
$ ./mvnw clean install
일반 mvn
명령을 사용하여 빌드하려면 Maven v3.8.0 이상이 필요합니다.
끌어오기 요청을 제출하려면 CONTRIBUTING.adoc를 참조하세요. 특히 첫 번째 중요 변경 사항을 적용하기 전에 기여자 계약에 서명하세요.
문서를 빌드하면 테스트를 실행하지 않고도 프로젝트도 빌드됩니다.
$ ./mvnw clean install -Pantora
생성된 문서는 target/antora/site/index.html
에서 사용할 수 있습니다.
spring.io 사이트에는 Spring Data를 단계별로 사용하는 방법을 보여주는 여러 가이드가 포함되어 있습니다.
Redis를 사용한 메시징: Redis를 메시지 브로커로 사용하는 방법을 알아봅니다.
Redis를 사용하여 반응적으로 데이터에 액세스: Redis 및 Spring 데이터와 반응적으로 인터페이스하는 방법을 알아보세요.
Spring 데이터 예제에는 특정 기능을 더 자세히 설명하는 예제 프로젝트가 포함되어 있습니다.
Spring Data Redis는 Apache 2.0 라이센스에 따라 릴리스된 오픈 소스 소프트웨어입니다.