Jedis
Jedis是Redis官方推荐的java连接开发工具!使用Java操作Redis的中间件!
导入Maven依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>redis01</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.71</version>
</dependency>
</dependencies>
</project>
编码测试
import redis.clients.jedis.Jedis;
public class TestPing {
public static void main(String[] args) {
//new Jedis对象
Jedis jedis = new Jedis("服务器ip",6379);
//Jedis所有命令都在对象里
System.out.println(jedis.ping());
}
}
执行成功,输出pong
注意:想要连接远程服务器的redis,必须注意以下几点
- 服务器安全组必须开放6379端口,包括出入
- 服务器防火墙开放6379端口
- 在配置文件中关闭redis保护模式
- 在配置文件中注释掉bind 127.0.0.1 即允许所有ip进行连接 也可以增加绑定自己的主机公网ip,而不开放所有,增加安全性
常用API
String List Set Hash Zset
简单事务
import com.alibaba.fastjson.JSONObject;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.Transaction;
public class TestTX {
public static void main(String[] args) {
Jedis jedis = new Jedis("203.195.154.132",6379);
jedis.flushDB();
Transaction multi = jedis.multi();
JSONObject jsonObject = new JSONObject();
jsonObject.put("hello","world");
jsonObject.put("name","dengwei");
String s = jsonObject.toJSONString();
try {
multi.set("user1",s);
multi.set("user2",s);
multi.exec();
}catch (Exception e) {
multi.discard();
e.printStackTrace();
}finally {
System.out.println(jedis.get("user1"));
System.out.println(jedis.get("user2"));
jedis.close();
}
}
}