jsp图片上传到数据库里面之后,不能直接在页面上显示,而是提示下载
2016-12-06 13:13
609 查看
【1】上课的时候,老师就遇到了这种情况,但是没有解决。后来我做得时候遇到这种情况。
如图所示:
百度了一下,没找到答案。于是乎,我就改了响应的返回类型。
刚开始是这样写:
response.setContentType("image/*");
后来改成这样:
response.setContentType("text/html;charset=utf-8");
这样之后,就可以在页面上显示图片。因为我们是要将图片显示到页面上,所以如果要将图片显示在页面里面应该是text/html格式的。
【2】部分代码:
//现在可以把文件内容写到页面上显示
ServletOutputStream sos=response.getOutputStream();
for(int i=0;i<buffer.length;i++){
sos.write(buffer[i]);
}
sos.close();
jsp图片在读取显示的时候也许还会出现这种异常:
显示非法状态异常:java.lang.IllegalstateException: getOutputStream() has already been called for this response
根据书上提示是:jsp被编译执行结束之后,会释放jsp中使用的所有对象。在释放对象是会调用response.getWriter()方法,和response.getOutputStream()相冲突。
解决方法:
在上面sos.close()后面,加上这两句,就可以了。其实无法就是解决不能同时使用的问题,注意这点就行了。
out.clear();
out=pageContext.pushBody();
注意:response.getWrite()(默认的),response.getOutputStream这两个方法只能使用一个,如果同时使用会出现上面的异常。
如图所示:
百度了一下,没找到答案。于是乎,我就改了响应的返回类型。
刚开始是这样写:
response.setContentType("image/*");
后来改成这样:
response.setContentType("text/html;charset=utf-8");
这样之后,就可以在页面上显示图片。因为我们是要将图片显示到页面上,所以如果要将图片显示在页面里面应该是text/html格式的。
【2】部分代码:
//现在可以把文件内容写到页面上显示
ServletOutputStream sos=response.getOutputStream();
for(int i=0;i<buffer.length;i++){
sos.write(buffer[i]);
}
sos.close();
jsp图片在读取显示的时候也许还会出现这种异常:
显示非法状态异常:java.lang.IllegalstateException: getOutputStream() has already been called for this response
根据书上提示是:jsp被编译执行结束之后,会释放jsp中使用的所有对象。在释放对象是会调用response.getWriter()方法,和response.getOutputStream()相冲突。
解决方法:
在上面sos.close()后面,加上这两句,就可以了。其实无法就是解决不能同时使用的问题,注意这点就行了。
out.clear();
out=pageContext.pushBody();
注意:response.getWrite()(默认的),response.getOutputStream这两个方法只能使用一个,如果同时使用会出现上面的异常。
相关文章推荐
- jsp页面上传图片之后页面,当前页面的显示上传的图片可以自行更新
- 求一段smartupload上传图片的代码,不需要保存到数据库,但是想在jsp页面选中文件夹图片后,立马可以显示
- struts2中使用Blob类型处理图片上传保存在数据库中并在JSP页面中显示图片
- JSP页面实现图片、PDF字节流的显示,Word、Excel、Zip字节流的下载功能的实现
- struts+jsp在页面图片的上传和下载
- jsp页面不能显示图片问题
- 使用servlet,jdbc将mysql中数据显示在jsp页面中,且实现直接删除数据库数据
- JSP页面直接显示Blob类型图片
- Flex上传图片等信息到数据库,并下载显示图片
- SpringMVC从数据库中读取图片显示到JSP页面上
- 用Seam实现:图片上传 + 保存到数据库 + 从数据库读出图片并显示到页面中
- Ueditor图片上传设置(1.4.3 JSP版本) - 解决图片不能显示问题
- java中图片上传并在jsp页面显示
- 请问如何在Web页面中点击一个button之后,用jsp从数据库中读取数据显示到表格里
- 用于显示ORACLE_BLOB存储的图片、flash文件的JSP文件,用于直接下载文件的JSP
- Flex上传图片等信息到数据库,并下载显示图片
- c# asp.net 使用kindeditor在服务器上不能显示上传图片的页面等解决办法
- JSP页面登录Imail后不能显示图片
- 浅谈如何调用JSP读取数据库中图片并显示在页面上
- XP专业版中安装了IIS,配置好之后只能访问静态htm网页,图片之类的,但是ASP 文件确不能读取,提示无法显示网页提示