redis和jedis区别_redis和数据库的区别

redis和jedis区别_redis和数据库的区别Redis与Spring的整合一般分为spring-data-redis和jedis整合,两者的区别在于:1.引入的依赖不同spring-data-redis引入的是<dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-redis</artifactId></dependency>jedis引入的是:&

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Redis与Spring的整合一般分为spring-data-redis和jedis整合,两者的区别在于:

1.引入的依赖不同

spring-data-redis引入的是

<dependency>

<groupId>org.springframework.data</groupId>

<artifactId>spring-data-redis</artifactId>

</dependency>

jedis引入的是:

<dependency>

<groupId>jedis.clients</groupId>

<artifactId>jedis</artifactId>

</dependency>

2.管理jedis实例和操作redis服务不同

spring-data-redis是通过org.springframework.data.redis.connection.jedis.JedisCon来管理,也就是通过工厂模式进行管理,再通过配置模板ben操作redis服务,这种方式代码段中存在大量与业务代码无关的模板片段代码,代码冗余、不易维护。

什么是RedisTemplate?

Spring封装了RedisTemplate对象来对redis服务进行各种操作,支持redis原生的api并提供了几个常用方法:

1.private ValueOperations<K,V>valueOps;

2.private ListOperations<K,V>listOps

3.private SetOperations<K,V>setOps

4.private ZSetOperations<K,V>zSetOps

Redis Template中定义了五种数据结构操作:

1.redisTemplate.opsForValue();//操作字符串

2.redisTemplate.opsForHash()//操作hash

3.redisTemplate.opsForList()//操作list

4.redisTemplate.opsForSet()//操作set

5.redisTemplate.opsForZSet()//操作有序Set

SpringRedisTemplate继承于RedisTemplate,两者的数据不共用,redisTemplate只负责RedisTemplate的数据,另一个也是如此。

更多详情Spring整合Redis具体步骤

SDR(SpringDateRedis)默认采用序列化策略有两种:

1.String的序列化方式 :StringRedisTemplate默认使用(保存key和value都是使用该策略)

2.jdk的序列化方式 :RedisTemplate默认使用(保存key和value都是使用该策略)

Jedis方式:

通过redis.clients.jedis.JedisPool来管理,即通过池来管理,通过池对象来获取jedis实例,然后直接通过jedis实例来操作redis服务,剔除了与业务代码无关的冗余代码,代码相对于上面的方式更加简洁,更容易维护

Jedis使用apache commons-pool2对jedis资源池进行管理

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195694.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm的安装选项_tomcat环境配置

    pycharm的安装选项_tomcat环境配置pycharm安装以及其环境的配置说明此次我们使用win10系统安装pycharm的64位社区版,并且对Anaconda3中自带的Python3进行环境的配置,如果您没有Anaconda3甚至是没有Python3环境,可以参考Anaconda3安装教程及说明,如果您的pip源未更改,这里推荐您改为使用国内的pip源,这样可以更快的下载组件,方法见修改pip源至国内镜像网站。教程从开始菜单中找到你的AnacondaPrompt并打开…

    2022年8月29日
    2
  • fastJson-对象转map

    fastJson-对象转mapCallbackEntitycallbackEntity=newCallbackEntity();callbackEntity.setUserId(infos.get(3));//用户idcallbackEntity.setOrderId(infos.get(0));//订单idcallbackEntity.setChannel(infos.get(4));//渠道callba…

    2022年5月13日
    199
  • Django组件_django路由path

    Django组件_django路由path什么是Django中间件中间件(Middleware)是一个用来处理Django的请求(Request)和响应(Response)的框架级别的钩子,它是一个轻量、低级别的插件系统,用于在全局范围内改

    2022年7月29日
    7
  • Ansi,UTF8,Unicode,ASCII编码的差别

    Ansi,UTF8,Unicode,ASCII编码的差别

    2021年11月15日
    51
  • 关于charles抓包https乱码的设置[通俗易懂]

    关于charles抓包https乱码的设置[通俗易懂]关于charles抓包https乱码的设置charles安装本地证书首先我们点击help->SSLProxying->InstallCharlesRootCertificate安装证书。默认安装证书是不受信任的,双击打开证书,打开信任选择项,将使用此证书时这是为始终信任。安装手机证书点击help->SSLProxying->Inst…

    2022年6月4日
    98
  • JShell介绍「建议收藏」

    JShell介绍「建议收藏」文章目录一、JShell是什么?二、为什么使用JShell三、使用步骤1.安装jdk9.0以上版本2.cmd命令行中进入JShell3.就可以直接敲击单行代码了引用一、JShell是什么?JavaShell工具(JShell)是用于学习Java编程语言和原型化Java代码的交互式工具。该工具使用命令行运行。二、为什么使用JShell使用JShell,可以一次输入一个程序元素,立即查看结果,并根据需要进行调整。三、使用步骤1.安装jdk9.0以上版本例如我的是15.0版本:2.cm

    2025年6月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号