博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
7、redis之使用spring集成commons-pool来操作常见数据类型
阅读量:5908 次
发布时间:2019-06-19

本文共 4143 字,大约阅读时间需要 13 分钟。

环境的搭建参见:http://www.cnblogs.com/yangzhilong/p/4729857.html

下面直接贴具体的测试代码:

1 package com.yzl;  2   3 import java.util.Arrays;  4 import java.util.HashMap;  5 import java.util.List;  6 import java.util.Map;  7   8 import org.junit.After;  9 import org.junit.Before; 10 import org.junit.Test; 11 import org.springframework.context.ApplicationContext; 12 import org.springframework.context.support.ClassPathXmlApplicationContext; 13 import org.springframework.util.SerializationUtils; 14  15 import redis.clients.jedis.Jedis; 16 import redis.clients.jedis.JedisPool; 17  18 /** 19  * RedisApp的测试类 20  * 21  * @author yangzhilong 22  * @see [相关类/方法](可选) 23  * @since [产品/模块版本] (可选) 24  */ 25 public class RedisApp4Test { 26     private JedisPool pool; 27     private ApplicationContext app; 28     private Jedis jedis; 29      30     @Before 31     public void before(){ 32         app = new ClassPathXmlApplicationContext("spring-config.xml"); 33         pool = app.getBean(JedisPool.class); 34         jedis = pool.getResource(); 35     } 36      37     @Test 38     public void test(){ 39         //string 40         operationString(); 41          42         //map 43         operationMap(); 44          45         //list 46         operationList(); 47          48         //自定义对象 49         operationMyObject(); 50     } 51      52     /** 53      *  54      * 功能描述: 
55 * 操作String 56 * 57 * @see [相关类/方法](可选) 58 * @since [产品/模块版本](可选) 59 */ 60 private void operationString(){ 61 jedis.set("name", "hello"); 62 jedis.append("name", " redis"); 63 String value = jedis.get("name"); 64 System.out.println("get value :" + value); 65 } 66 67 /** 68 * 69 * 功能描述:
70 * 操作Map 71 * 72 * @see [相关类/方法](可选) 73 * @since [产品/模块版本](可选) 74 */ 75 private void operationMap(){ 76 Map
map = new HashMap
(); 77 map.put("key1", "value1"); 78 map.put("key2", "value2"); 79 jedis.hmset("map", map); 80 //这里可以一次读取多个key 81 List
result = jedis.hmget("map", "key1" , "key2"); 82 for(String str : result){ 83 System.out.println("get value from map : " + str); 84 } 85 } 86 87 /** 88 * 89 * 功能描述:
90 * 操作List 91 * 92 * @see [相关类/方法](可选) 93 * @since [产品/模块版本](可选) 94 */ 95 private void operationList(){ 96 List
result = Arrays.asList("item1","item2"); 97 for(String str : result){ 98 jedis.lpush("list", str); 99 }100 jedis.lpush("list", "value3");101 result = jedis.lrange("list", 0, -1);102 for(String str : result){103 System.out.println("get value from list : " + str);104 }105 jedis.lpop("list");106 for(String str : result){107 System.out.println("get value from list again : " + str);108 }109 }110 111 /**112 * 113 * 功能描述:
114 * 操作自定义对象115 *116 * @see [相关类/方法](可选)117 * @since [产品/模块版本](可选)118 */119 private void operationMyObject(){120 Entity entity = new Entity();121 entity.setName("test");122 entity.setAge(20);123 //保存124 jedis.set("obj".getBytes(), SerializationUtils.serialize(entity));125 //读取126 byte[] bytes = jedis.get("obj".getBytes());127 Entity ret = (Entity)SerializationUtils.deserialize(bytes);128 System.out.println("读取到自定义的类的属性name的值为:" + ret.getName());129 }130 131 @After132 public void after(){133 //释放连接134 pool.returnResourceObject(jedis);135 System.out.println("end~~~");136 }137 }

运行的结果:

1 get value :hello redis 2 get value from map : value1 3 get value from map : value2 4 get value from list : value3 5 get value from list : item2 6 get value from list : item1 7 get value from list again : value3 8 get value from list again : item2 9 get value from list again : item110 读取到自定义的类的属性name的值为:test11 end~~~

 

下一篇:

你可能感兴趣的文章
3.8软件测试模型
查看>>
深入理解C指针四(指针类型转换)--By kmalloc
查看>>
Vue-router
查看>>
Redis集群学习笔记
查看>>
开发小白也毫无压力的hexo静态博客建站全攻略 - 躺坑后亲诉心路历程
查看>>
机器学习 第二章:模型评估与选择-总结
查看>>
MYSQL 查询缓存
查看>>
C++----练习--while求和
查看>>
问答项目---用户注册的那些事儿(JS验证)
查看>>
iOS 国际化支持 设置
查看>>
Android高效加载大图、多图解决方案,有效避免程序OOM
查看>>
Android进阶篇-百度地图获取地理信息
查看>>
log4j2.xml 配置
查看>>
寻找字符最大公共子串
查看>>
KVC
查看>>
返回前一页并刷新页面方法
查看>>
2.3 InnoDB 体系架构
查看>>
linux系统配置之单一网卡配置多个不同网段IP(centos)
查看>>
.erb 中不能显示从mysql检索出的中文 incompatible character encodings: UTF-8 and ASCII-8BIT...
查看>>
一个专门下载全球气象站数据的网站(包括中国700多个站)
查看>>