El objetivo principal del proyecto Spring Data es facilitar la creación de aplicaciones impulsadas por Spring que utilicen nuevas tecnologías de acceso a datos, como bases de datos no relacionales, marcos de reducción de mapas y servicios de datos basados en la nube.
Este módulo proporciona integración con la tienda Redis. También se ha probado que funciona con Valkey en el mejor de los casos, siempre que Valkey siga siendo ampliamente compatible con Redis.
Paquete de conexión como abstracción de bajo nivel entre múltiples controladores Redis (Lettuce y Jedis).
Traducción de excepciones a la jerarquía de excepciones de acceso a datos portátil de Spring para excepciones del controlador Redis
RedisTemplate
que proporciona una abstracción de alto nivel para realizar varias operaciones de Redis, traducción de excepciones y soporte de serialización.
Compatibilidad con Pubsub (como MessageListenerContainer para POJO controlados por mensajes).
Soporte para Redis Sentinel y Redis Cluster.
API reactiva utilizando el controlador Lettuce.
Serializadores de mapeo JDK, String, JSON y Spring Object/XML.
Implementaciones de JDK Collection sobre Redis.
Clases de soporte de contador atómico.
Funcionalidad de clasificación y canalización.
Soporte dedicado para el patrón SORT, SORT/GET y valores masivos devueltos.
Implementación de Redis para la abstracción de caché Spring 3.1.
Implementación automática de interfaces Repository
, incluida la compatibilidad con métodos de búsqueda personalizados utilizando @EnableRedisRepositories
.
Soporte CDI para repositorios.
Este proyecto se rige por el Código de conducta de Spring. Al participar, se espera que respete este código de conducta. Informe el comportamiento inaceptable a [email protected].
A continuación se muestra un adelanto rápido de una aplicación que utiliza Spring Data Redis en Java:
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 ();
}
}
Agregue la dependencia de Maven:
< dependency >
< groupId >org.springframework.data</ groupId >
< artifactId >spring-data-redis</ artifactId >
< version >${version}</ version >
</ dependency >
Si prefiere las últimas instantáneas de la próxima versión principal, utilice nuestro repositorio de instantáneas de Maven y declare la versión de dependencia adecuada.
< 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 >
¿Tiene problemas con Spring Data? ¡Nos encantaría ayudar!
Consulte la documentación de referencia y Javadocs.
Aprenda los conceptos básicos de Spring: Spring Data se basa en Spring Framework; consulte el sitio web spring.io para obtener una gran cantidad de documentación de referencia. Si recién estás comenzando con Spring, prueba una de las guías.
Si está actualizando, consulte las notas de la versión para conocer las funciones "nuevas y destacadas".
Haga una pregunta: supervisamos stackoverflow.com en busca de preguntas etiquetadas con spring-data-redis
. También puedes chatear con la comunidad en Gitter.
Informe errores con Spring Data Redis en github.com/spring-projects/spring-data-redis.
Spring Data utiliza Github como sistema de seguimiento de problemas para registrar errores y solicitudes de funciones. Si desea plantear un problema, siga las recomendaciones a continuación:
Antes de registrar un error, busque en el rastreador de problemas para ver si alguien ya informó el problema.
Si el problema aún no existe, cree uno nuevo.
Proporcione la mayor cantidad de información posible con el informe de problemas; nos gustaría saber la versión de Spring Data que está utilizando, la versión de JVM, Stacktrace, etc.
Si necesita pegar código o incluir un seguimiento de la pila, utilice las barreras de código Markdown ```.
Si es posible, intente crear un caso de prueba o un proyecto que replique el problema. Adjunte un enlace a su código o un archivo comprimido que contenga su código.
No es necesario compilar desde el código fuente para usar Spring Data (binarios en repo.spring.io), pero si desea probar lo último y lo mejor, Spring Data se puede compilar fácilmente con el contenedor maven. También necesitas JDK 17 o superior y make
. El entorno de compilación local se administra dentro de un Makefile
para descargar, compilar y activar Redis en varias configuraciones (independiente, Sentinel, clúster, etc.)
$ make test
El comando anterior ejecuta una compilación completa. Puede utilizar los comandos make start
, make stop
y make clean
para controlar el entorno usted mismo. Esto es útil si desea evitar reinicios constantes del servidor. Una vez que se hayan iniciado todas las instancias de Redis, puede ejecutar pruebas en su IDE o en la compilación completa de Maven:
$ ./mvnw clean install
Si desea compilar con el comando mvn
normal, necesitará Maven v3.8.0 o superior.
Consulte también CONTRIBUTING.adoc si desea enviar solicitudes de extracción y, en particular, firme el Acuerdo de colaborador antes de realizar su primer cambio no trivial.
La creación de la documentación también construye el proyecto sin ejecutar pruebas.
$ ./mvnw clean install -Pantora
La documentación generada está disponible en target/antora/site/index.html
.
El sitio spring.io contiene varias guías que muestran cómo usar Spring Data paso a paso:
Mensajería con Redis: aprenda a utilizar Redis como intermediario de mensajes.
Acceso a datos de forma reactiva con Redis: aprenda a interactuar de forma reactiva con Redis y Spring Data.
Spring Data Ejemplos contiene proyectos de ejemplo que explican características específicas con más detalle.
Spring Data Redis es un software de código abierto publicado bajo la licencia Apache 2.0.