import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import redis.clients.jedis.Jedis;
/**
* @author wangzhijun
* @date 2013-04-01
*/
publicclass RedisTest {
/**
* @param args
*/
publicstaticvoid main(String[] args) {
// TODO Auto-generated method stub
// 字符串测试 //[key,value]=["wl_str","jedis test ..."]
Jedis jedis = new Jedis("localhost");
jedis.set("wl_str", "jedis test ...");
String x = jedis.get("wl_str");
System.out.println(x);
// 列表 list 主要命令有两个LPUSH,RPUSH。L代表左,R代表右
jedis.rpush("wl_list", "疑是地上霜");
jedis.rpush("wl_list", "举头望明月");
jedis.rpush("wl_list", "低头思故乡");
jedis.lpush("wl_list", "床前明月光");
List<String> values = jedis.lrange("wl_list", 0, -1); //LRANGE用来获取子列表。第一个元素的索引为0。-1,表示列表末尾,-2表示列表倒数第二个
System.out.println(values);
// 集合 Set(无序) SADD命令可以向集合添加一个新元素
jedis.sadd("wl_set", "1");
jedis.sadd("wl_set", "2");
jedis.sadd("wl_set", "3");
jedis.sadd("wl_set", "4");
Set<String> setValues = jedis.smembers("wl_set"); //SMEMEBER命令获取集合里的元素
System.out.println(setValues);
// 有序集合 Sorted Set
jedis.zadd("wl_sortedSet", 1940, "1940-购置房屋");
jedis.zadd("wl_sortedSet", 1953, "1953-购置汽车");
jedis.zadd("wl_sortedSet", 1965, "1965-发明专利");
jedis.zadd("wl_sortedSet", 1916, "1916-上小学");
jedis.zadd("wl_sortedSet", 1969, "1969-获得诺贝尔");
jedis.zadd("wl_sortedSet", 1912, "1912-出生");
Set<String> sortedSetValues = jedis.zrange("wl_sortedSet", 0, -1);//按照年份排序
System.out.println("由年份从老到新排序");
System.out.println(sortedSetValues);
System.out.println("由年份从新到老排序");
sortedSetValues=null;
sortedSetValues=jedis.zrevrange("wl_sortedSet", 0, -1);
System.out.println(sortedSetValues);
//哈希表 Hash 主要用于批量修改和获取
Map<String, String> pairs = new HashMap<String, String>();
pairs.put("name", "克瑞斯");
pairs.put("age", "20");
pairs.put("sex", "男");
jedis.hmset("young", pairs); //设置hash的值
values = jedis.hmget("young", new String[] { "name", "age", "sex" });
System.out.println(values);
setValues = jedis.hkeys("young"); //获取young变量里面的标签 name、age和sex
System.out.println(setValues);
values = jedis.hvals("young"); //获取young变量里面的标签 name、age和sex所对应的值
System.out.println(values);
pairs = jedis.hgetAll("young"); //
System.out.println(pairs);
}
}
jedis test ...
[床前明月光, 疑是地上霜, 举头望明月, 低头思故乡][3, 2, 1, 4]由年份从老到新排序[1912-出生, 1916-上小学, 1940-购置房屋, 1953-购置汽车, 1965-发明专利, 1969-获得诺贝尔]由年份从新到老排序[1969-获得诺贝尔, 1965-发明专利, 1953-购置汽车, 1940-购置房屋, 1916-上小学, 1912-出生][克瑞斯, 20, 男][sex, name, age][20, 克瑞斯, 男]{sex=男, name=克瑞斯, age=20}若要运行本程序,需要下载jar包(jedis-2.1.0.jar),具体位置://github.com/xetorthio/jedis/downloads