packagecom.chinasofti.test;importjava.io.IOException;importjava.io.OutputStream;importjava.util.HashMap;importjava.util.Map;importjava.util.logging.Logger;importorg.junit.Before;importorg.junit.Test;importredis.clients.jedis.Jedis;/*** Java连接Redis测试
*@authorliuhl
**/
public classConnRedis {
Jedis jedis;
@Beforepublic voidinit(){
jedis= new Jedis("localhost", 6379, 30);
jedis.auth("admin");
}/*** 测试Redis对字符串的操作
* set():添加一个新字符串
* append():向已有的key所对应的value上面追加值
* del():删除某个键
* mset():设置多个键值对
* incr(k):对该可以进行+1操作
*@authorliuhl*/@Testpublic voidtestRedisString(){
jedis.set("username", "sMith kevens");
jedis.append("username", "是Redis开发者");
System.out.println(jedis.get("username")+"------------");//删除某个键
jedis.del("date");
System.out.println(jedis.get("date")+"======");//设置多个键值对
jedis.mset("nicheng","shubiao","QAge","3","QQnumber","906058683","sex","man");
jedis.incr("QAge");//进行+1操作
System.out.println(jedis.get("nicheng")+":"+jedis.get("QAge")+":"+jedis.get("QQnumber")+":"+jedis.get("sex"));
}/*** Redis对List的操作
* llen():获取列表size
* lpush():向列表左侧插入元素
* rpush():向列表右侧插入元素
* lrange("",0,-1):获取列表所有元素
*@authorliuhl*/@Testpublic voidtestRedisList(){//开始前先移除所有的内容
jedis.del("javaframe work");
System.out.println(jedis.lrange("java framework", 0, -1));//定义列表frame work,并向其中添加三条数据
jedis.lpush("javaframe work", "struts2");
jedis.lpush("javaframe work", "spring");
jedis.lpush("javaframe work", "hibernate");
System.out.println(jedis.llen("javaframe work")+"个");
System.out.println(jedis.lrange("javaframe work", 0, -1));//向列表右侧添加元素
jedis.rpush("javaframe work", "ibatis");
jedis.rpush("javaframe work", "mybatis");
jedis.rpush("javaframe work", "springmvc");
System.out.println(jedis.lrange("javaframe work", 0, -1));
}/***Jedis操作无序列表(Set)
*sadd():向无序列表插入元素
*smembers():获取所有加入的value
*srem():移除
*sismember():判断一个值是不是某个集合的元素,返回boolean
*scard():返回集合元素的个数
*srandmember():返回集合中的一个随机元素
*@authorliuhl
*@returnvoid
*@category*/@Testpublic voidtestRedisSet(){//向无序集合插入元素
jedis.sadd("user", "yanbao");
jedis.sadd("user", "chengyi");
jedis.sadd("user", "fanwei");//移除
jedis.srem("user", "chengyi");
System.out.println(jedis.smembers("user"));
System.err.println(jedis.sismember("user", "yunfei"));
System.out.println(jedis.scard("user"));
System.out.println(jedis.srandmember("user"));
}/*** 测试列表排序sort
* redis:Lists是双向链表
* 排序前先清掉列表,后添加数据测试
*@exceptionInterruptedException:检查异常
*@authorliuhl*/@Testpublic void testListSort() throwsInterruptedException{
jedis.del("arr");
jedis.lpush("arr", "4");
jedis.lpush("arr", "78");
jedis.lpush("arr", "2");
jedis.lpush("arr", "9");
jedis.lpush("arr", "7");
jedis.rpush("arr", "120");
jedis.rpush("arr", "91");
jedis.rpush("arr", "88");
jedis.rpush("arr", "31");
jedis.rpush("arr", "10");
System.out.println("排序前:"+jedis.lrange("arr", 0, -1));
System.out.println("排序后:"+jedis.sort("arr"));
}/***
* 测试redis有序集合
* com.chinasofti.test
* 方法名:testRedisShortZset
* 创建人:liuhl
* 时间:2017-4-5-上午10:15:33
* return: void
*@exception*@since1.0.0
* zadd():向有序集合(sorts zsets)中插入一个元素
* zrange():仅列出所有的元素值。*/@Testpublic voidtestRedisShortZset(){//向有序集合sorts sets插入元素
jedis.zadd("lhlzset", 6, "http://localhost:8080");
jedis.zadd("lhlzset", 6, "sort");//只列出有序集合的元素
System.out.println(jedis.zrange("lhlzset", 0, -1));
System.out.println(jedis.zrangeByScore("lhlzset", 0, 6));
}/***
* 测试hashs哈希
* com.chinasofti.test
* 方法名:testHashs
* 创建人:liuhl
* 时间:2017-4-6-上午9:46:04
* return: void
*@exception*@since1.0.0
* hmset():建立hashs并赋值
* hmget():列出hashs相关*/@Testpublic voidtestHashs(){//建立hashs并赋值
Map map = new HashMap<>();
map.put("首都", "北京");map.put("河南", "洛阳");map.put("陕西", "西安");
jedis.hmset("china", map);//列出hashs的内容
System.out.println(jedis.hmget("china", "河南"));
}
}