🎉🎉欢迎来到我的CSDN主页!🎉🎉
🏅我是君易--鑨,一个在CSDN分享笔记的博主。📚📚
🌟推荐给大家我的博客专栏《Redis实战开发》。🎯🎯
🎁如果感觉还不错的话请给我关注加三连吧!🎁🎁
💖期待你的加入,一起学习,一起进步!💖💖
前言
在上一期的博客中我们初步的去了解了一下Redis的知识简介,并且分享了关于Redis的一些基础操作。今天的这期博客继续带老铁们进一步探讨有关Redis的使用及操作,认真观看,仔细阅读。
一、Java连接Redis
1. 启动Redis服务及客户端连接
我们这次的Redis在我们Windows系统也就会主机电脑上启动服务,点击到我们解压的文件夹中,双击redis.bat文件运行即可,然后在主机连接,显示数据表代表成功。
2. 在开发工具中导入pom依赖
我这里是以IDEA作为操作演示,在pom.xml文件中添加以下代码。
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
3. 新建一个类连接Redis数据库
如下图,我新建一个文件夹Redis用于存放测试连接Redis数据库以及对数据库进行操作的类。
//连接
Jedis jedis = new Jedis("IP", 端口号);
//设置密码
jedis.auth("密码");
//测试连接代码 输出结果为pong则说明连接成功
System.out.println(jedis.ping());
//选择操作的数据库 i---->数据库编号
jedis.select(i);
二、Java操作redis数据库
1. Redis字符串(String)
1.1 设置值
语法: jedis.set("变量名","值")
运行代码后我们在Redis客户端在指定的数据库刷新查看,验证数据是否设置添加成功
1.2 修改值
语法: jedis.set("变量名","值")
与设置值一样。
数据库也对应的发生了改变
1.3 设置有时间显示的值及查看剩余时间
语法:
jedis.setex("变量名",时间,"值"); -----> 给键值对设置过期时间
ttl 变量名 -----> 获取键值对剩余的存活时间
1.4 其他语法
type key -----> 查看类型
keys * 或keys key ------->查看所有或者指定的key
2. Redis哈希(Hash)
2.1 设置值
语法:
jedis.hset("key","变量名","值"); --->同时将多个field-value设置到哈希表key中
该方式属于没插入一条数据都要编写一行代码,如果要实现在Linux系统中实现批量插入则需要借助编写工具类实现。
所以我们新建一个类所谓工具类,在其中编写方法来实现Hash的批量插入。
RedisUtil
package Redis;
import redis.clients.jedis.Jedis;
import java.util.Map;
import java.util.Set;
/**
* @author 君易--鑨
* @site www.yangxin.com
* @company 木易
* @create 2023-11-03 19:58
*/
public class RedisUtil {
// hash批量添加
public static void setHashMap(Jedis jedis, String key, Map<String,String> map){
if (map != null && map.size()>0){
Set<String> keys =map.keySet();
for (String k :keys){
jedis.hset(key,k,map.get(k));
}
}
}
}
测试
结果
2.2 删除
语法:
hdel key field ------>删除指定的字段值
2.3 获取值
语法:
hget key field -------->获取指定的字段值
3. Redis列表(List)
语法如下,效果则就不演示了,和Linux有类似的用法。
语法 | 作用 |
lpush key value1 value2 value3 | 将一个或多个值插入到列表头部 |
llen key | 获取列表的长度 |
lindex key index | 根据索引获取列表中的元素 |
lrange key start sop | 查看指定范围内的元素 |
4. Redis集合(Set)
语法 | 作用 |
sadd key value1 [value2] | 向集合添加一个或多个元素 |
scard key | 获取集合中的元素数量 |
exists key | 是否存在 |
三、 Redis在会议OA中的运用
- 会话复制:在分布式环境下,用户的会话信息可能需要进行复制。Redis提供了会话复制功能,可以将用户的会话信息复制到多个Redis节点上,确保数据的可用性和可扩展性。
- 缓存策略:在会议OA系统中,可以根据不同的场景和需求,采用不同的缓存策略,如缓存最近访问的数据、缓存热门数据、缓存查询结果等。Redis提供了灵活的缓存策略,可以根据实际需求进行定制和优化。
- 事务处理:Redis支持事务处理,可以在多个操作之间执行原子性的更新和删除操作。在会议OA系统中,可以使用Redis的事务处理功能来实现一些复杂的业务逻辑,如会议申请、资源分配等。
- 分布式锁的优化:在使用分布式锁时,需要考虑锁的粒度和锁的持有时间。过细的锁粒度会增加系统的开销和复杂性,而过长的锁持有时间则可能导致系统的性能瓶颈。Redis提供了灵活的锁机制,可以根据实际需求进行优化。
- 数据持久化:Redis提供了数据持久化功能,可以将数据保存到磁盘中,避免数据丢失和意外重启的问题。在会议OA系统中,可以使用Redis的数据持久化功能来保证数据的可靠性和稳定性。
- 性能监控和调试:Redis提供了丰富的性能监控和调试工具,可以帮助开发人员及时发现和解决系统性能问题。在会议OA系统中,可以使用Redis的性能监控和调试工具来评估系统的性能表现和瓶颈所在。
本期分享到此结束,感谢观看