• Spring Data Redis整体介绍 (一)


    为什么使用Spring Data Redis

    首先Spring Data Redis Spring 框架提供的用于操作Redis的客户端。
    Spring框架是一个全栈Java程序框架,通过DI AOP和便携的服务抽象提供一个轻量的容器和非侵入编程模型支持。
    NoSQL存储为传统的关系型数据库提供了横向扩展和速度上的替代,Key-Value存储是目前NoSQL领域的主要成员。
    Spring Data Redis(SDR)框架通过消除冗余的、重复的集成代码,使Spring程序能简单的使用Redis的Key-Value存储。

    Spring Data Redis目前支持两种驱动:Jedis和Lettuce,可以看成是这两种驱动的统一封装,以高度统一的形式屏蔽了底层驱动的操作细节,向用户提供一种统一的API,大致结构如下:

    ![层次结构

    Spring Data Redis整体结构

    Spring Data Redis Spring Data家族的其他数据操作如:Spring Data JDBC,以类似的结构进行封装,降低用户的学习成本;只要使用过其中一种Spring Data技术,对其他的数据源操作能依葫芦画瓢的进行,封装的整体结构如下:

    封装层次.jpg

    将封装的层次分为4部分:

    1. 底层的工厂层和连接层,这里会依据驱动的不同而有不同的实现;连接层可以直接与Redis Server进行交互,采用二进制数据和命令进行。
    2. 模板层是对连接层的进一步封装,对Redis的每种数据类型,都封装一个操作类,与Redis Server进行交互,如String类型的ValueOperations;而RedisTemplate持有所有类型操作的引用,所以可以直接通过定义RedisTemplate对Redis进行操作;RedisTemplate封装了通用的操作,如删除key,设置过期时间,对不同数据类型的操作通过具体的操作类进行。
    3. 键绑定层是对模板层的更进一步封装,每个类型的实例只能操作单一的键值(实例化时已经指定了键)

    系统要求与学习资料

    Spring Data Redis的系统要求:Spring Data Redis 1.x --> JDK 1.6 + 、Redis 2.6.x +

    常用的Redis Java客户端有:Jedis、Lettuce、Redison、Spring Data Redis,对应的学习资料如下:
    Jedis:https://github.com/xetorthio/jedis/wiki
    Lettuce:https://github.com/lettuce-io/lettuce-core/wiki
    Redison:https://github.com/redisson/redisson
    SPR:https://docs.spring.io/spring-data/redis/docs/2.0.2.RELEASE/reference/html/
    更多客户端参照:http://www.redis.net.cn/clients/#java

  • 相关阅读:
    spark java wordCount实例
    SpringMVC 商城项目
    jstl 遍历数据
    jquery 方法总结
    8ch
    7ch
    使用vuex实现组件间传值
    Vue父子组件之间传值
    从浏览器输入URL地址到最终页面渲染完成,发生了什么?
    数组去重
  • 原文地址:https://www.cnblogs.com/Jxwz/p/8372297.html
Copyright © 2020-2023  润新知