二进制内容对应的实体属性为byte[],上传图片时以二进制形式保存到数据库,导出为本地图片文件后无法显示。对比过上传图片和导出后的图片大小都一样。
导出图片文件的代码如下:try {
File outFile = new File("e:\\2.gif"); //上传的图片也是gif
FileOutputStream fos = new FileOutputStream(outFile);
fos.write(avatar.getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
导出图片文件的代码如下:try {
File outFile = new File("e:\\2.gif"); //上传的图片也是gif
FileOutputStream fos = new FileOutputStream(outFile);
fos.write(avatar.getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
解决方案 »
- jxl 操作excel 单元格
- 【紧急】已经加上mail.jar包 但是总是说找不到com/sun/mail/util/LineInputStream
- oracle text 的问题
- 求高手解决!不知道是出了什么原因?
- struts2 让session永久怎么弄?
- C++ 调用 JAVA soap WEBservice 字符集问题
- 运行 中国移动业务管理系统(spring+struts+hibernate)时提示以下错误
- STRURS乱码求救
- struts怎么把数据库中的数据填到表单里面啊?
- 新手,web项目中,web.xml里面的东西搞不懂啊,
- 急求Axis2问题
- JSF实现选项卡的可用和不可用报错???
public byte[] getBytes() {
return bytes;
} public void setBytes(byte[] bytes) {
this.bytes = bytes;
}
上传图片:(上传部分是没问题的,因为上传后是可以在页面上显示出来的,只是从数据库中导出来才显示不了)public String saveBinary() throws Exception {
FileInputStream fis = new FileInputStream(file);
byte[] content = new byte[fis.available()];
entity.setBytes(content); //....
avatarManager.saveAvatar(entity, user); return "showUserInfo";
}