将 map 转为 大字段Blob 在数据库中存取
将Map<String,String>转换为byte[]数组
public static byte[] mapToBytes(Map<String,String> map){
try {
byte[] bytes = null;
//map转byte[]
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ObjectOutputStream objectOutputStream = new ObjectOutputStream(outputStream);
objectOutputStream.writeObject(map);
bytes = outputStream.toByteArray();
return bytes;
} catch (Exception e) {
throw new IMEServiceException(IMECMSStatusCodeEnum.ERROR_QUEUE_CONVERT_BYTES_FAIL,e);
}
}
将byte[]数组转换为Map<String,String>
public static Map<String,String> bytesToMap(byte[] bytes) {
try {
ByteInputStream byteInputStream = new ByteInputStream(bytes, bytes.length);
ObjectInputStream objectInputStream = new ObjectInputStream(byteInputStream);
Map<String,String> map = (Map<String, String>) objectInputStream.readObject();
return map;
} catch (Exception e) {
throw new IMEServiceException(IMECMSStatusCodeEnum.ERROR_QUEUE_CONVERT_MAP_FAIL,e);
}
}