redis整合Spring之序列化对象与反序列化

写在最前面

1.Spring必须是4.2.6及以上版本才支持redis

2.jar包版本建议统一

需要准备jar包

1.aopalliance-1.0.jar

2.spring-data-commons-1.8.4.RELEASE.jar

3.spring-data-redis-1.8.4.RELEASE.jar

正文

1.在spring配置文件中添加配置

该值 且 空闲连接>最大空闲连接数 时直接释放 -->

2.Spring配置文件中配置redistemplate(高亮部分的配置使得序列化对象得以实现)

RedisTemplate中需要声明4种serializer,默认为“JdkSerializationRedisSerializer”:

1) keySerializer :对于普通K-V操作时,key采取的序列化策略

2) valueSerializer:value采取的序列化策略

3) hashKeySerializer: 在hash数据结构中,hash-key的序列化策略

4) hashValueSerializer:hash-value的序列化策略

                                                                                                                     

3.测试一下

首先创建一个User的model类( 必须继承Serializable类才可序列化 )

publicclassUserimplementsSerializable{privateString name;privateString age;privateString sex;publicStringgetName(){returnname;    }publicvoidsetName(String name){this.name = name;    }publicStringgetAge(){returnage;    }publicvoidsetAge(String age){this.age = age;    }publicStringgetSex(){returnsex;    }publicvoidsetSex(String sex){this.sex = sex;    }publicvoidprint(){        System.out.println("姓名:"+name);        System.out.println("年龄:"+age);        System.out.println("性别:"+sex);    }}

写一个测试类

publicclassTestOrder{@Testpublicvoidtest(){    ApplicationContext context=newClassPathXmlApplicationContext("bean1.xml");    RedisTemplate r = context.getBean(RedisTemplate.class);;    User user =newUser();    user.setName("冯吉荣");    user.setAge("22");    user.setSex("男");    r.opsForValue().set("user_1", user);    User user1 = (User)r.opsForValue().get("user_1");    user1.print();    }}

结果

这次真有图

13465705-40338d401a8ff918.png!web

写在最后

对象的存储是hash,保证jar包的版本统一,同时保证redis服务在运行,即可成功

欢迎工作一到五年的Java工程师朋友们加入Java进阶高级架构:855355016

本群提供免费的学习指导 架构资料 以及免费的解答

不懂得问题都可以在本群提出来 之后还会有职业生涯规划以及面试指导

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值