开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第6天,点击查看活动详情”
前言
上次我们大概知道了什么是redis,以及redis最最基本的五种基本数据结构,你以为我接下来会讲redis那几种对应的基本命令如,set和hset这些吗?错错错这些,命令你都可以在redis.io/ 这个网站上找到,当然你也可以看官方文档学习,实在不行还有图形化界面操作。所以我们直接快进到java客户端。
jdies使用的基本步骤
1 引入依赖
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.7.0</version>
</dependency>
2 建立连接
@BeforeEach
void setUp() {
// 建立连接
jedis = new Jedis("192.168.150.101", 6379);
// 设置密码
jedis.auth("123321");
// 选择库
jedis.select(0);}
调用jedis的对应api(这里不过多解释)
存在的问题
虽然看上去调用很简单,但是这些东西似乎都是固定的,那应该可以做到把固定的部分提取出来,只需要传入对应的参数就好了,特别是最好在配置文件上配好,让程序读取对应的参数就好了。
更加便捷的jedis使用
幸运的是,上面讲的都已经实现了。springboot已经集成了这种操作。其中对Redis的集成模块就叫做SpringDataRedis。SpringDataRedis中提供RedisTemplate工具类,封装了对Redis的操作。将不同数据类型的操作API封装到不同的类型中。而且我们也可以在配置文件中配置好对应的主机地址,端口号,密码以及连接池(单次单次的连接效率太差,所以需要一个连接池,就像mysql的连接池一样)
springboot使用方法
你只需要引入相关的依赖,然后配置好文件,最后在你要使用的时候直接向spring拿。
存在的问题二
虽然很方便,但是这样使用会有一个问题就是序列化(RedisTemplate的)问题,当我们在自己的服务器上看从java上存入的东西,并不是原来的形式存入的是字节码。好在这些都有方式解决,一是重新自定义RedisTemplate的序列化方式(感兴趣的可以上网搜)或者直接使用StringRedisTemplate 这个有spring提供的类(推荐)。