Java连接Redis客户端
jedis对string 、set、sortset、list、hash的所有常规操作。 我们使用maven工程测试开发,首先引入jedis.jar:
代码语言:javascript复制 <dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.8.0</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
若对Redis命令还没有一点概念,请阅读笔者前面的文章。这里直接上代码,简单粗暴:
代码语言:javascript复制package org.byron4j.redis_case;
import java.text.SimpleDateFormat;
import java.util.Date;
import redis.clients.jedis.Jedis;
/**
* Hello world!
*
*/
public class App
{
public static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
public static void main( String[] args ) throws Throwable
{
Jedis jedis = new Jedis("localhost");
/**
*
*/
System.out.println(sdf.format(new Date()) " - " "清空当前数据库实例全部键:" jedis.flushDB());
/**
* 对字符串类型操作
*/
System.out.println(sdf.format(new Date()) " - " "字符串类型set的返回:" jedis.set("foo", "bar"));
String value = jedis.get("foo");
System.out.println( sdf.format(new Date()) " - " "使用get获取字符串键值:" value);
/**
* 对列表类型操作
* -- 将val1放到对头,再将val2放到对头,这时候val1到了队尾,rpop获取队尾元素得到val1.
*/
System.out.println(sdf.format(new Date()) " - " "lpush往列表头插入一个元素:" jedis.lpush("code_list1", "val1"));
System.out.println(sdf.format(new Date()) " - " "lpush往列表头插入一个元素:" jedis.lpush("code_list1", "val2"));
System.out.println(sdf.format(new Date()) " - " "lpush往列表尾取出一个元素:" jedis.rpop("code_list1"));
/**
* 设置超时
*/
System.out.println(sdf.format(new Date()) " - " "lpush往列表头插入一个元素:" jedis.lpush("ttl_list1", "val1"));
System.out.println(sdf.format(new Date()) " - " "设置超时时间10秒:" jedis.expire("ttl_list1", 10));
System.out.println(sdf.format(new Date()) " - " "停顿3秒后...");
Thread.sleep(3000);
System.out.println(sdf.format(new Date()) " - " "查看剩余存活时间:" jedis.ttl("ttl_list1"));
System.out.println(sdf.format(new Date()) " - " "查看数据库中的键:" jedis.keys("*"));
System.out.println(sdf.format(new Date()) " - " "再停顿7秒...");
Thread.sleep(7000);
System.out.println(sdf.format(new Date()) " - " "查看数据库中的键:" jedis.keys("*"));
}
}
运行结果,一目了然:
代码语言:javascript复制2016-10-08 17:46:00 - 清空当前数据库实例全部键:OK
2016-10-08 17:46:00 - 字符串类型set的返回:OK
2016-10-08 17:46:00 - 使用get获取字符串键值:bar
2016-10-08 17:46:00 - lpush往列表头插入一个元素:1
2016-10-08 17:46:00 - lpush往列表头插入一个元素:2
2016-10-08 17:46:00 - lpush往列表尾取出一个元素:val1
2016-10-08 17:46:00 - lpush往列表头插入一个元素:1
2016-10-08 17:46:00 - 设置超时时间10秒:1
2016-10-08 17:46:00 - 停顿3秒后...
2016-10-08 17:46:03 - 查看剩余存活时间:7
2016-10-08 17:46:03 - 查看数据库中的键:[code_list1, ttl_list1, foo]
2016-10-08 17:46:03 - 再停顿7秒...
2016-10-08 17:46:10 - 查看数据库中的键:[code_list1, foo]
记得自己动手实验,现在你已经入门了,对于java中的redis编程。