Jedis连接Redis

Jedis连接Redis

导入Jar包

这里使用Maven项目,在POM中添加以下依赖

<dependency>
	<groupId>redis.clients</groupId>
	<artifactId>jedis</artifactId>
	<version>3.5.2</version>
</dependency>

version会随时时间更改,可以访问https://mvnrepository.com/查询最新的version

测试连接

Jedis jedis = new Jedis("192.168.150.3", 6379);
System.out.println(jedis.ping());

如果执行成功会返回“PONG”
我采用了GentOS 7虚拟机中安装Redis测试(本机测试使用127.0.0.1没有问题,原因下面略微解释以下),第一次连接会提示连接失败异常,一般是以下两个原因:

  1. Linux的防火墙没有放行端口,一般我们采用6379端口开启Redis,所以配置放行6379端口
# 添加指定需要开放的端口:
firewall-cmd --add-port=6379/tcp --permanent
#重载入添加的端口:
firewall-cmd --reload
#查询指定端口是否开启成功:
firewall-cmd --query-port=6379/tcp
  1. Redis配置的问题,处于安全问题,Redis默认只允许本机(127.0.0.1)连接Redis,否则Redis若直接暴露在公网之下,任何人都可以随意访问,可想而知你的数据一定是在“裸奔”,不过一般我们连接远程服务器的话,需要开启,那么你最好设置一个Redis访问密码(本文不作设置),下面命令配置允许连接Redis的IP(我配置的IP的是安装了Redis的虚拟机的IP)
vim redis-conf
# 下面这个命令是vim的命令行执行
/bind # 查找bind关键字,此时你可以看看那一段对应的英文,解释的很详细
# 然后在配置文件中修改 bind 127.0.0.1 --- 为
bind 192.168.150.3
# 回到Linux的终端
redis-server redis-conf # 重新通过配置文件开启Redis

操作Redis

测试连接成功之后,你可以任意的操作Redis,所有的操作方法都可以从创建的Jedis对象中找到,你直接在命令行如何操作Redis,就找到对应的方法去操作即可,例如:

jedis.set("k1", "v1");
System.out.println(jedis.get("k1"));

使用完毕之后可以关闭连接 jedis.close();

Redis事务

想了想,事务也比较重要,在这里也简单演示一下,使用Jedis进行Redis事务操作

Transaction multi = jedis.multi(); // 开启事务,获取事务对象
try {
    multi.set("k1", "v1");
    multi.mset("k2","v2","k3", "v3");
    multi.exec(); // 执行事务
} catch (Exception e) {
    multi.discard(); // 回滚
    e.printStackTrace();
} finally {
    jedis.close(); // 关闭连接
}
上一篇:Java客户端Jedis 对Redis的几种调用方式包括事务、管道、分布式


下一篇:Redis急速入门!