<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.7.2</version>
</dependency>
注意
1)本地dos界面确认远程服务器是否可以ping通: ping vm虚拟机的ip地址。
2)确认防火墙是否关闭或放行。(centos7系统)
#查看防火墙是否关闭
firewall-cmd --state
#关闭防火墙
systemctl stop firewalld.service
单实例链接
Jedis jedis = new Jedis(“ip地址”, 端口号);//建立链接
核心代码:
public class redisDemo {
public static void main(String[] args) {
Jedis jedis = new Jedis("192.168.249.166",6379);
//设置值
jedis.set("demo1","demo456");
String demo1 = jedis.get("demo1");
System.out.println("demo1的变量是:"+demo1);
}
}
结果:
常见异常:
解决方案:
虚拟机客户端连接的ip是127.0.0.1,意思是连接的本机,其他机器无法连接,这里需要修改配置文件,将连接地址改为虚 拟机的地址,就可以了。
修改redis.conf文件里面的 bind 连接地址,将连接地址改为自己虚拟机的ip
bind 192.168.249.166
重新启动服务,Jedis就可以正常连上了
jedis连接池连接,后面会使用Spring的配置文件来整合。
public static void main(String[] args) {
//1.创建连接池配置的工具类对象
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
jedisPoolConfig.setMaxIdle(10);//jedis连接的空闲数
jedisPoolConfig.setMaxTotal(20);//总的连接数
JedisPool jedisPool = null;
Jedis jedis = null;
try {
//2.创建连接池对象
jedisPool = new JedisPool("192.168.249.166", 6379);
//3.获得jedis资源
jedis = jedisPool.getResource();
//4.操作数据
jedis.set("stu1", "student1");
String stu1 = jedis.get("stu1");
System.out.println("stu1=" + stu1);
} catch (Exception e) {
e.printStackTrace();
} finally {
//5.关闭资源
if (jedis != null) {
jedis.close();
}
if (jedisPool != null) {
jedisPool.close();
}
}
}
结果: