序列化与反序列化,Java实现
来源:互联网 发布:超市软件手机版 编辑:程序博客网 时间:2024/05/01 08:26
- public class SerializingUtil {
- private static Log logger = LogFactory.getLog(SerializingUtil.class);
- /**
- * 功能简述: 对实体Bean进行序列化操作.
- * @param source 待转换的实体
- * @return 转换之后的字节数组
- * @throws Exception
- */
- public static byte[] serialize(Object source) {
- ByteArrayOutputStream byteOut = null;
- ObjectOutputStream ObjOut = null;
- try {
- byteOut = new ByteArrayOutputStream();
- ObjOut = new ObjectOutputStream(byteOut);
- ObjOut.writeObject(source);
- ObjOut.flush();
- }
- catch (IOException e) {
- logger.error(source.getClass().getName()
- + " serialized error !", e);
- }
- finally {
- try {
- if (null != ObjOut) {
- ObjOut.close();
- }
- }
- catch (IOException e) {
- ObjOut = null;
- }
- }
- return byteOut.toByteArray();
- }
- /**
- * 功能简述: 将字节数组反序列化为实体Bean.
- * @param source 需要进行反序列化的字节数组
- * @return 反序列化后的实体Bean
- * @throws Exception
- */
- public static Object deserialize(byte[] source) {
- ObjectInputStream ObjIn = null;
- Object retVal = null;
- try {
- ByteArrayInputStream byteIn = new ByteArrayInputStream(source);
- ObjIn = new ObjectInputStream(byteIn);
- retVal = ObjIn.readObject();
- }
- catch (Exception e) {
- logger.error("deserialized error !", e);
- }
- finally {
- try {
- if(null != ObjIn) {
- ObjIn.close();
- }
- }
- catch (IOException e) {
- ObjIn = null;
- }
- }
- return retVal;
- }
- }
- 注意:被序列化的对象需要继承Serializable接口,不然反序列化会失败。
0 0
- 序列化与反序列化,Java实现
- Apache Avro 序列化与反序列化 (Java 实现)
- java序列化与反序列化
- java序列化与反序列化
- java序列化与反序列化
- java序列化与反序列化
- Java序列化与反序列化
- Java序列化与反序列化
- java 序列化 与 反序列化
- java序列化与反序列化
- JAVA序列化与反序列化
- java序列化与反序列化
- java序列化与反序列化
- java序列化与反序列化
- Java序列化与反序列化
- Java序列化与反序列化
- Java序列化与反序列化
- Java序列化与反序列化
- 月入10w
- Servlet的一些基础知识和demo小例子
- [leetcode] 37. Sudoku Solver
- 盘点国外很很牛逼的安卓开源社区
- ListView单行选中变色
- 序列化与反序列化,Java实现
- Servlet3.0新特性
- libpcap编程入门资源
- 页面加载顺序及解析流程分享
- 欢迎使用CSDN-markdown编辑器
- Android07_Activity及其生命周期
- 使用Node.js 和 MongoDB 为app搭建后端简单教程 附代码
- Microsoft.XMLHTTP对象详解
- 《VR入门系列教程》之8---GearVR