parent
c925bd1685
commit
895ad80e2a
7 changed files with 114 additions and 17 deletions
@ -0,0 +1,73 @@ |
||||
package com.xxl.job.core.util; |
||||
|
||||
import org.slf4j.Logger; |
||||
import org.slf4j.LoggerFactory; |
||||
|
||||
import java.io.*; |
||||
|
||||
/** |
||||
* @author xuxueli 2020-04-12 0:14:00 |
||||
*/ |
||||
public class JdkSerializeTool { |
||||
private static Logger logger = LoggerFactory.getLogger(JdkSerializeTool.class); |
||||
|
||||
|
||||
// ------------------------ serialize and unserialize ------------------------
|
||||
|
||||
/** |
||||
* 将对象-->byte[] (由于jedis中不支持直接存储object所以转换成byte[]存入) |
||||
* |
||||
* @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(), e); |
||||
} finally { |
||||
try { |
||||
oos.close(); |
||||
baos.close(); |
||||
} catch (IOException e) { |
||||
logger.error(e.getMessage(), e); |
||||
} |
||||
} |
||||
return null; |
||||
} |
||||
|
||||
|
||||
/** |
||||
* 将byte[] -->Object |
||||
* |
||||
* @param bytes |
||||
* @return |
||||
*/ |
||||
public static <T> Object deserialize(byte[] bytes, Class<T> clazz) { |
||||
ByteArrayInputStream bais = null; |
||||
try { |
||||
// 反序列化
|
||||
bais = new ByteArrayInputStream(bytes); |
||||
ObjectInputStream ois = new ObjectInputStream(bais); |
||||
return ois.readObject(); |
||||
} catch (Exception e) { |
||||
logger.error(e.getMessage(), e); |
||||
} finally { |
||||
try { |
||||
bais.close(); |
||||
} catch (IOException e) { |
||||
logger.error(e.getMessage(), e); |
||||
} |
||||
} |
||||
return null; |
||||
} |
||||
|
||||
|
||||
} |
@ -0,0 +1,24 @@ |
||||
package com.xxl.job.core.util; |
||||
|
||||
import java.io.PrintWriter; |
||||
import java.io.StringWriter; |
||||
|
||||
/** |
||||
* @author xuxueli 2018-10-20 20:07:26 |
||||
*/ |
||||
public class ThrowableUtil { |
||||
|
||||
/** |
||||
* parse error to string |
||||
* |
||||
* @param e |
||||
* @return |
||||
*/ |
||||
public static String toString(Throwable e) { |
||||
StringWriter stringWriter = new StringWriter(); |
||||
e.printStackTrace(new PrintWriter(stringWriter)); |
||||
String errorMsg = stringWriter.toString(); |
||||
return errorMsg; |
||||
} |
||||
|
||||
} |
Loading…
Reference in new issue