java反序列化php序列化的对象
2017-10-18 14:59
267 查看
最近工作中遇到一个需要解析php序列化后存入DB的array,
而我们项目是使用java,就需要反序列化,还好有一个第三方类库可以使用,项目地址:http://www.phprpc.org/zh_CN/docs/
使用时,需要知道被序列化的对象是单个对象还是被以array的形式序列化的
若是单个对象,直接可以反序列化
若是array需要借助Cast类,转换成java对应的对象
<dependency> <groupId>org.sction</groupId> <artifactId>phprpc</artifactId> <version>3.0.2</version> </dependency>
使用时,需要知道被序列化的对象是单个对象还是被以array的形式序列化的
若是单个对象,直接可以反序列化
public static Test getUnserialize(String content) throws Exception { PHPSerializer p = new PHPSerializer(); if (StringUtils.isEmpty(content)) return null; Test t = (Test) p.unserialize(content.getBytes(),Test.class); return t; }
若是array需要借助Cast类,转换成java对应的对象
public static List<Test> getUnserializeList(String content) throws Exception { List<Test> list = new ArrayList<Test>(); PHPSerializer p = new PHPSerializer(); if (StringUtils.isEmpty(content)) return list; AssocArray array = (AssocArray) p.unserialize(content.getBytes()); for (int i = 0; i < array.size(); i++) { Test t = (Test) Cast.cast(array.get(i), Test.class); list.add(t); } return list; }
相关文章推荐
- java反序列化php序列化的对象
- Java 反序列化 php 序列化后的对象
- 深入理解Java对象序列化
- java对象序列化和反序列化必须要注意
- java 对象直接序列化
- Java IO _对象序列化
- 理解Java对象序列化
- 深入理解JAVA I/O系列五:对象序列化
- 【Java】使用Json-lib序列化关联对象的异常解决
- java对象序列化
- java Redis Jedis存储Java对象 - (Java序列化为byte数组方式)
- java对象序列化学习笔记
- Java对象的序列化和反序列化
- java对象序列化学习笔记
- Java对象的序列化
- Java对象的序列化和反序列化
- 理解Java对象序列化
- Java中如何序列化一个对象
- Java 序列化对象为字符串 然后反序列化为对象
- PHP与Java面向对象不完全比较