package com.xx.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.*;
/**
* 序列化 工具类
*/
public class SerializeUtil {
private static final Logger logger = LoggerFactory.getLogger(SerializeUtil.class.getName());
/**
* 序列化
* @param object
* @return
*/
public static byte[] serialize(Object object) {
ObjectOutputStream oos = null;
ByteArrayOutputStream baos = null;
try {
//序列化
baos = new ByteArrayOutputStream();
oos = new ObjectOutputStream(baos);
oos.writeObject(object);
byte[] bytes = baos.toByteArray();
return bytes;
} catch (Exception e) {
logger.error(e.getMessage());
}finally{
try {
baos.flush();
baos.close();
oos.flush();
oos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
logger.error(e.getMessage());
}
}
return null;
}
/**
* 反序列化
* @param bytes
* @return
*/
@SuppressWarnings("unchecked")
public static <T> T unserialize(byte[] bytes) {
T object=null;
if(bytes==null){
return null;
}
ByteArrayInputStream bais = null;
ObjectInputStream ois =null;
try {
//反序列化
bais = new ByteArrayInputStream(bytes);
ois = new ObjectInputStream(bais);
object =(T) ois.readObject();
} catch (Exception e) {
logger.error(e.getMessage());
}finally{
try {
bais.close();
ois.close();
} catch (IOException e) {
logger.error(e.getMessage());
}
}
return object;
}
}
序列化 工具类
最新推荐文章于 2024-10-01 08:09:30 发布
本文介绍了一个用于Java项目的序列化工具类,该工具类提供序列化和反序列化功能,能够将对象转换为字节数组,或者从字节数组中还原对象,适用于对象的持久化存储和网络传输。
1549

被折叠的 条评论
为什么被折叠?



