Redis下实现序列化保存和使用FastJson的处理(java)

1.在不使用Redis的情况下; 

 我们一般从数据库中查到数据,然后放进List<User>,或者是User,然后使用java的框架,放数据到指定位置。

或者是从数据库中查到数据,放到List<User>,然后拼接json字符串或使用各种json库将字符串respon回前台,前台使用js来解析放到指定位置。


2.加入了Redis后:

从数据库中查到数据,然后放进List<User>,或者是User,然后将数据存进Redis中,在需要使用时,从Redis中通过键获得值。

但是:java中操作Redis,没有原生的api能实现:储存  list<User>,或者是实体类:Redis一般情况下存储普通的类型的数据,尽管他也能存set,list,等等,但是直接调api还是有很多东西要做的。所以不如封装一个类,达到将List<User>,或者User这样的数据存进去,获取也一下子可以获取。

 public static class ObjectsTranscoder{
              /**
               * 序列化
               * **/
	        public static  <T> byte[] serialize(List<T> t) {  
	            if (t == null) {
	                throw new NullPointerException("Can't serialize null");
	            }
	            byte[] rv=null;
	            ByteArrayOutputStream bos = null;
	            ObjectOutputStream os = null;
	            try {
	                bos = new ByteArrayOutputStream();
	                os = new ObjectOutputStream(bos);
	                for(T user : t){
	                    os.writeObject(user);
	                }
	                os.writeObject(null);
	                os.close();
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值