Jedis
使用Java来操作Redis,Jedis是Redis官方推荐使用的Java连接redis的客户端。
1、修改redis的配置文件,修改两处位置
2、改了上述配置后,还要
1、firewall-cmd --zone=public --add-port=6379/tcp --permanet # 开放端口
2、systemctl restart firewalld.service # 重启防火墙
3、阿里云服务器控制台配置安全组
4、重启redis
最后本地的xshell可以用127.0.0.1和阿里云的公网和私网都可以连接,IDEA可以用公网连接
下面用Java连接
1、创建一个空的maven项目,导入下面的两个依赖,导入jedis的依赖即可,我下面的事务用到了json,所以我也导入了json的依赖
<dependencies>
<!--导入jedis包-->
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.3.0</version>
</dependency>
<!--fastjon-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.73</version>
</dependency>
</dependencies>
2、用java ping一下看连接成功没
import redis.clients.jedis.Jedis;
public class TestPing {
public static void main(String[] args) {
Jedis jedis = new Jedis("阿里云公网",6379);
//有密码的还要匹配密码
jedis.auth("Wl123456");
System.out.println(jedis.ping());
jedis.close();
}
}
事务
import com.alibaba.fastjson.JSONObject;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.Transaction;
public class TestTX {
public static void main(String[] args) {
//连接redis
Jedis jedis = new Jedis("阿里云公网", 6379);
jedis.flushDB();
//获取json对象
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "zhangsan");
jsonObject.put("age", "20");
String user1 = jsonObject.toJSONString();
//开启事务
Transaction multi = jedis.multi();
try {
multi.set("user1", user1);
//执行事务
multi.exec();
} catch (Exception e) {
//有异常时候关闭事务
multi.discard();
} finally {
System.out.println(jedis.get("user1"));
//关闭连接
jedis.close();
}
}
}