package com.mzj.practice.utils; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class SerializeUtils { private static final Logger LOG = LoggerFactory.getLogger(SerializeUtils.class); /** * 对象序列化为字符串 */ public static String serialize(Object obj) throws Exception { ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); ObjectOutputStream objectOutputStream = new ObjectOutputStream(byteArrayOutputStream); objectOutputStream.writeObject(obj); String serStr = byteArrayOutputStream.toString("UTF-8"); LOG.info("对象obj:【" + obj + "】序列化serStr:【" + serStr + "】"); objectOutputStream.close(); byteArrayOutputStream.close(); return serStr; } /** * 字符串 反序列化为 对象 */ public static Object unSerialize(String serStr) throws Exception { ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(serStr.getBytes("UTF-8")); ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream); Object obj = objectInputStream.readObject(); LOG.info("对象obj:【" + obj + "】反序列化serStr:【" + serStr + "】"); objectInputStream.close(); byteArrayInputStream.close(); return obj; } }
时间: 2024-10-13 04:50:43