close

Spring Data Redis

Spring Data Redis是较大的Spring Data系列的一部分,可轻松配置并从Spring应用程序访问Redis。它提供了与商店交互的低层和高层抽象,使用户摆脱了基础设施方面的顾虑。

特征

  • 连接包是跨多个Redis驱动程序(LettuceJedis)的低级抽象。

  • 将Redis驱动程序异常转换为Spring的可移植数据访问异常层次结构。

  • RedisTemplate提供了用于执行各种Redis操作,异常转换和序列化支持的高级抽象。

  • Pubsub支持(例如,消息驱动的POJO的MessageListenerContainer)。

  • Redis SentinelRedis Cluster支持。

  • 使用Lettuce驱动程序的反应性API。

  • JDK,String,JSON和Spring Object / XML映射序列化器

  • Redis之上的JDK Collection实现。

  • 原子计数器支持类。

  • 排序和流水线功能。

  • 专门支持SORT,SORT / GET模式和返回的批量值。

  • Spring 3.1缓存抽象的Redis实现

  • Repository接口的自动实现,包括使用的自定义查询方法的支持@EnableRedisRepositories

  • CDI对存储库的支持。

配置RedisTemplate…。

<bean id="jedisConnFactory"
    class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"
    p:use-pool="true"/>

<!-- redis template definition -->
<bean id="redisTemplate"
    class="org.springframework.data.redis.core.RedisTemplate"
    p:connection-factory-ref="jedisConnFactory"/>

注入并使用RedisTemplate或其任何opsForX()实例…。

public class Example {

    // inject the actual template
    @Autowired
    private RedisTemplate<String, String> template;

    // 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());
    }
}
SpringInitializr

快速启动您的项目

使用 Spring Initializr引导您的应用程序 。

文献资料

每个Spring项目都有自己的项目。它详细说明了如何使用项目功能以及使用它们可以实现的功能。
2.5.0 当前 GA 参考文件 API文件
2.5.1- 快照
2.4.9- 快照
2.4.8 GA 参考文件 API文件
2.3.10.BUILD-SNAPSHOT 快照
2.3.9.RELEASE GA 参考文件 API文件