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

2022-09-30 09:54:13 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

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资源池进行管理

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

0 人点赞