sql的image类型数据存储文字信息以十六进制的表现出来。
mybatis以流的形式存储。
InputStream is = null;
try {
is = new ByteArrayInputStream(info_content.getBytes("utf-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
map.put("info_content", is);
以流的形式取出就可以了
public JSONResult getElectronInfo(Map<String, Object> param) {
List<List<Map<String, Object>>> list = noticeMapping.getElectronInfo(param);
byte[] buff = new byte[1024];
//从字符串获取字节写入流
byte[] file_content = (byte[]) list.get(1).get(0).get("info_content");
InputStream is = new ByteArrayInputStream(file_content);
int len = -1;
String res = "";
while(true) {
try {
if (!(-1 != (len = is.read(buff)))) break;
} catch (IOException e) {
e.printStackTrace();
}
//将字节数组转换为字符串
res += new String(buff, 0, len);
}
list.get(1).get(0).put("info_content",res);
return JSONResult.success(list);
}
存储文件或图片时显示位二进制数据
同样存储,取出流就可以了.