L'objectif principal du projet Spring Data est de faciliter la création d'applications Spring qui utilisent de nouvelles technologies d'accès aux données telles que des bases de données non relationnelles, des frameworks de réduction de cartes et des services de données basés sur le cloud.
Ce module permet l'intégration avec la boutique Redis. Il est également testé pour fonctionner avec Valkey au mieux tant que Valkey reste largement compatible avec Redis.
Package de connexion sous forme d'abstraction de bas niveau sur plusieurs pilotes Redis (Lettuce et Jedis).
Traduction des exceptions vers la hiérarchie d'exceptions d'accès aux données portable de Spring pour les exceptions du pilote Redis
RedisTemplate
qui fournit une abstraction de haut niveau pour effectuer diverses opérations Redis, la traduction des exceptions et la prise en charge de la sérialisation.
Prise en charge de Pubsub (comme MessageListenerContainer pour les POJO pilotés par messages).
Prise en charge de Redis Sentinel et Redis Cluster.
API réactive utilisant le pilote Lettuce.
Sérialiseurs de mappage JDK, String, JSON et Spring Object/XML.
Implémentations de JDK Collection sur Redis.
Classes de support de contre-attaque atomique.
Fonctionnalité de tri et de pipeline.
Prise en charge dédiée du modèle SORT, SORT/GET et des valeurs groupées renvoyées.
Implémentation Redis pour l'abstraction du cache Spring 3.1.
Implémentation automatique des interfaces Repository
y compris la prise en charge des méthodes de recherche personnalisées à l'aide de @EnableRedisRepositories
.
Prise en charge CDI pour les référentiels.
Ce projet est régi par le code de conduite de Spring. En participant, vous êtes censé respecter ce code de conduite. Veuillez signaler tout comportement inacceptable à [email protected].
Voici un aperçu rapide d'une application utilisant 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 ();
}
}
Ajoutez la dépendance Maven :
< dependency >
< groupId >org.springframework.data</ groupId >
< artifactId >spring-data-redis</ artifactId >
< version >${version}</ version >
</ dependency >
Si vous préférez les derniers instantanés de la prochaine version majeure, utilisez notre référentiel d'instantanés Maven et déclarez la version de dépendance appropriée.
< 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 >
Vous rencontrez des problèmes avec Spring Data ? Nous serions ravis de vous aider !
Consultez la documentation de référence et Javadocs.
Apprenez les bases de Spring – Spring Data s'appuie sur Spring Framework, consultez le site Web spring.io pour une multitude de documentation de référence. Si vous débutez avec Spring, essayez l'un des guides.
Si vous effectuez une mise à niveau, consultez les notes de version pour connaître les fonctionnalités « nouvelles et remarquables ».
Posez une question - nous surveillons stackoverflow.com pour les questions marquées avec spring-data-redis
. Vous pouvez également discuter avec la communauté sur Gitter.
Signalez les bogues avec Spring Data Redis sur github.com/spring-projects/spring-data-redis.
Spring Data utilise Github comme système de suivi des problèmes pour enregistrer les bogues et les demandes de fonctionnalités. Si vous souhaitez soulever un problème, veuillez suivre les recommandations ci-dessous :
Avant de consigner un bug, veuillez effectuer une recherche dans le système de suivi des problèmes pour voir si quelqu'un a déjà signalé le problème.
Si le problème n'existe pas déjà, créez un nouveau problème.
Veuillez fournir autant d'informations que possible avec le rapport de problème, nous aimons connaître la version de Spring Data que vous utilisez, la version JVM, Stacktrace, etc.
Si vous devez coller du code ou inclure une trace de pile, utilisez les clôtures de code Markdown ```.
Si possible, essayez de créer un cas de test ou un projet qui reproduit le problème. Joignez un lien vers votre code ou un fichier compressé contenant votre code.
Vous n'avez pas besoin de créer à partir des sources pour utiliser Spring Data (binaires dans repo.spring.io), mais si vous souhaitez essayer les dernières et meilleures versions, Spring Data peut être facilement créée avec le wrapper maven. Vous avez également besoin de JDK 17 ou supérieur et make
. L'environnement de construction local est géré dans un Makefile
pour télécharger, créer et lancer Redis dans diverses configurations (autonome, Sentinel, cluster, etc.)
$ make test
La commande précédente exécute une build complète. Vous pouvez utiliser les commandes make start
, make stop
et make clean
pour contrôler vous-même l'environnement. Ceci est utile si vous souhaitez éviter les redémarrages constants du serveur. Une fois que toutes les instances Redis ont été démarrées, vous pouvez soit exécuter des tests dans votre IDE, soit dans la version complète de Maven :
$ ./mvnw clean install
Si vous souhaitez construire avec la commande mvn
standard, vous aurez besoin de Maven v3.8.0 ou supérieur.
Consultez également CONTRIBUTING.adoc si vous souhaitez soumettre des pull request, et en particulier veuillez signer l'accord de contributeur avant votre premier changement non trivial.
Construire la documentation construit également le projet sans exécuter de tests.
$ ./mvnw clean install -Pantora
La documentation générée est disponible sur target/antora/site/index.html
.
Le site spring.io contient plusieurs guides qui montrent comment utiliser Spring Data étape par étape :
Messagerie avec Redis : découvrez comment utiliser Redis comme courtier de messages.
Accès aux données de manière réactive avec Redis : découvrez comment interagir de manière réactive avec Redis et Spring Data.
Spring Data Exemples contient des exemples de projets qui expliquent plus en détail des fonctionnalités spécifiques.
Spring Data Redis est un logiciel Open Source publié sous la licence Apache 2.0.