关于redis的操作demo代码如下:

import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map; import org.apache.commons.lang3.StringUtils;
import org.junit.Before;
import org.junit.Test; import redis.clients.jedis.Jedis; public class TestCodis {
private Jedis jedis;
private String codisProxy ="192.168.1.151";
private int codisPort = 19000; @Before
public void setup(){
jedis = new Jedis(codisProxy,codisPort);
} /**
* redis 存储字符串
*/
@Test
public void testString(){ System.out.println(jedis.get("mainFlow")); //-------------添加数据-----------
jedis.set("name", "angelbaby");//向key-->name中放入了value-->angel
System.out.println(jedis.get("name"));// angelbaby jedis.set("name","pike");
System.out.println(jedis.get("name")); jedis.append("name","is my godgirl");//拼接
System.out.println(jedis.get("name"));//angelbabyis my godgirl jedis.del("name");//删除某个键
System.out.println(jedis.get("name"));//null
System.out.println(!StringUtils.isEmpty(jedis.get("name"))); //设置多个键值对
jedis.mset("name","liulin","age","23","qq","456456123");
jedis.incr("age");//进行加1操作
System.out.println(jedis.get("name")+"-"+jedis.get("age")+"-"+jedis.get("qq"));
//liulin-24-456456123
} /*
* redis操作Map
*/
@Test
public void testMap() {
//-----添加数据----------
Map<String, String> map = new HashMap<String, String>();
map.put("name", "xinxin");
map.put("age", "22");
map.put("qq", "123456");
jedis.hmset("user",map);
//取出user中的name,执行结果:[minxr]-->注意结果是一个泛型的List
//第一个参数是存入redis中map对象的key,后面跟的是放入map中的对象的key,后面的key可以跟多个,是可变参数
List<String> rsmap = jedis.hmget("user", "name", "age", "qq");
System.out.println(rsmap); //[xinxin, 22, 123456] //删除map中的某个键值
jedis.hdel("user","age");
System.out.println(jedis.hmget("user", "age")); //因为删除了,所以返回的是 [null]
System.out.println(jedis.hlen("user")); //返回key为user的键中存放的值的个数 2
System.out.println(jedis.exists("user"));//是否存在key为user的记录 返回 true
System.out.println(jedis.hkeys("user"));//返回map对象中的所有key [qq, name]
System.out.println(jedis.hvals("user"));//返回map对象中的所有value [123456, xinxin] Iterator<String> iter=jedis.hkeys("user").iterator();
while (iter.hasNext()){
String key = iter.next();
System.out.println(key+":"+jedis.hmget("user",key)); // qq:[123456] name:[xinxin]
}
} /**
* jedis操作List
*/
@Test
public void testList(){
//开始前,先移除所有的内容
jedis.del("java framework");
System.out.println(jedis.lrange("java framework",0,-1)); //[]
//先向key java framework中存放三条数据
jedis.lpush("java framework","spring");
jedis.lpush("java framework","struts");
jedis.lpush("java framework","hibernate");
//再取出所有数据jedis.lrange是按范围取出,
// 第一个是key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度 -1表示取得所有
System.out.println(jedis.lrange("java framework",0,-1)); //[hibernate, struts, spring] jedis.del("java framework");
jedis.rpush("java framework","spring");
jedis.rpush("java framework","struts");
jedis.rpush("java framework","hibernate");
System.out.println(jedis.lrange("java framework",0,-1));//[spring, struts, hibernate]
} /**
* jedis操作Set
*/
@Test
public void testSet(){
//添加
jedis.sadd("user1","liuling");
jedis.sadd("user1","xinxin");
jedis.sadd("user1","ling");
jedis.sadd("user1","zhangxinxin");
jedis.sadd("user1","who");
//移除noname
jedis.srem("user1","who");
System.out.println(jedis.smembers("user1"));//获取所有加入的value [xinxin, liuling, ling, zhangxinxin]
System.out.println(jedis.sismember("user1", "who"));//判断 who 是否是user集合的元素 false
System.out.println(jedis.srandmember("user1")); // xinxin
System.out.println(jedis.scard("user1"));//返回集合的元素个数 4
} @Test
public void test() throws InterruptedException {
//jedis 排序
//注意,此处的rpush和lpush是List的操作。是一个双向链表(但从表现来看的)
jedis.del("a");//先清除数据,再加入数据进行测试
jedis.rpush("a", "1");
jedis.lpush("a","6");
jedis.lpush("a","3");
jedis.lpush("a","9");
System.out.println(jedis.lrange("a",0,-1));// [9, 3, 6, 1]
System.out.println(jedis.sort("a")); //[1, 3, 6, 9] //输入排序后结果
System.out.println(jedis.lrange("a",0,-1)); //[9, 3, 6, 1]
} }

TestCodis的工具代码的更多相关文章

  1. 压力工具代码及epoll使用

    服务器编程 P347的压力工具代码不错,对于epoll用的好,可以看.

  2. MD5加密工具代码

    找到一个开源的MD5加密工具代码,收藏起来 /** * MD5加密工具 */ public class MD5Utils { /** * byte[]字节数组 转换成 十六进制字符串 * @param ...

  3. JavaScript 相关的工具代码

    博客地址:https://ainyi.com/49 记录一些数据处理需要的方法工具代码 持续更新中... 时间戳转与日期格式相互转换 时间戳转换成日期格式 function timestampToTi ...

  4. IE9浏览器打开开发者工具代码正常执行,反之报错

    1.can i use console  IE9开发者工具打开时支持console对象,否则报错. 2.由于出现错误 80020101 而导致此项操作无法完成 测试代码 <!DOCTYPE ht ...

  5. SpringMVC Http请求工具代码类

    在SpringMVC的源代码中也提供了一个封装过的ThreadLocal,其中保存了每次请求的HttpServletRequest对象,(详细请看org.springframework.web.con ...

  6. Spine输出资源一键入Unity3D工具代码

    之前预研过2D骨骼动画编辑工具SPINE,感觉其比cocosStudio及Unity3D自带的骨骼动画编辑器(原生Sprite Tree或Uni2D)要更适合有3DSMax习惯的美术,即Spine更容 ...

  7. chrome79开发者工具代码高亮失效的解决办法

    升级chrome最新版本后,存在开发者工具Sources内代码高亮失效的情况 解决办法: 1. 开发者工具面板右上角菜单->Setting->Preferences 2. 将Theme切换 ...

  8. Android开发之强大的网络判断工具,判断是否联网,判断是wifi还是3g网络等java工具代码类

    作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985, 转载请说明出处. 给大家分享一个Android开发者常用的工具类.主要针对网络判断的 功能强大.下面 ...

  9. 工具 | 代码调试利器fiddle介绍

    我们开发的系统运行在用户的环境上,为了保护我们的代码和提升性能,前端javascript是经过压缩的.压缩的代码难于定位,当前只有chrome对压缩的代码支持格式化,但是变量和函数简化后,定位依然困难 ...

随机推荐

  1. python 学习分享-函数篇

    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也可以自己创建函数,这 ...

  2. OAuth 开放授权

    什么是OAuth授权?   一.什么是OAuth协议 OAuth(开放授权)是一个开放标准. 允许第三方网站在用户授权的前提下访问在用户在服务商那里存储的各种信息. 而这种授权无需将用户提供用户名和密 ...

  3. PHP排序的几种方法

    // 冒泡排序 function BubbleSort($arr) { // 获得数组总长度 $num = count($arr); // 正向遍历数组 for ($i = 1; $i < $n ...

  4. BZOJ 2015:[Noi2010]能量采集(数论+容斥原理)

    2005: [Noi2010]能量采集 Description 栋栋有一块长方形的地,他在地上种了一种能量植物,这种植物可以采集太阳光的能量.在这些植物采集能量后,栋栋再使用一个能量汇集机器把这些植物 ...

  5. 请大家注意这个网站www.haogongju.net

    乱转发我的文章,求职之路(拿到百度.美团.趋势科技.华为offer),不注明出处,我把原来的博客删除了,被转载的文章还在,www.haogongju.net,你侵犯版权!!!请你自动撤销!!!

  6. 出租车(taxi)

    出租车(taxi) 题目描述 Bessie在农场上为其他奶牛提供出租车服务.这些奶牛已经在沿着长度为M(1<= M <= 1,000,000,000)的栅栏上不同的地点聚集等候.不幸的是, ...

  7. HDR 高动态范围图像

    以下来源于百度百科: 高动态范围图像(High-Dynamic Range,简称HDR),相比普通的图像,可以提供更多的动态范围和图像细节,根据不同的曝光时间的LDR(Low-Dynamic Rang ...

  8. Maven多模块项目依赖管理

    Maven多模块项目依赖管理及dependencies与dependencyManagement的区别 转自:http://blog.csdn.net/liutengteng130/article/d ...

  9. HDOJ-1671 Phone List

    Phone List Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Probl ...

  10. nvarchar与varchar的区别

    原文发布时间为:2009-08-05 -- 来源于本人的百度文章 [由搬家工具导入] 1、通俗一點就是varchar適合輸入英文和數字,nvarchar一般用做中文或其它語言的輸入,這樣到別的語系不會 ...