JSP显示图片问题的解决

js|解决|问题|显示

  前提:使用JSP显示图片。图片的存储位置在数据库中。

  方法:用JDBC连接数据库,从数据库读出数据,用输出流输出到页面。

<\%@ page contentType="text/html" language="java" \%>
<\%@ page buffer="16kb" \%>
<\%@ page import="java.sql.*"\%>
<\%@ page import="java.io.*"%>
 <\% int len = 10 * 1024 * 1024;
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@10.168.8.99:1521:orafy"; //orcl为你的数据库的SID String user="lhzy";
 String password="qwertyuiop";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select pic from test";
ResultSet rs=stmt.executeQuery(sql); //定位到记录 rs.next();
InputStream in = rs.getBinaryStream(1);//①
response.reset(); //返回在流中被标记过的位置
response.setContentType("image/jpg"); //或gif等 //得到输入流
OutputStream toClient = response.getOutputStream();//②
byte[] P_Buf = new byte[len];
 int i;
while ((i = in.read(P_Buf)) != -1)
{
toClient.write(P_Buf, 0, i);
} in.close();
toClient.flush(); //强制清出缓冲区
toClient.close();//②
\%>
<\% rs.close();
stmt.close();
conn.close(); \%>

  需要注意的地方:

  需要注意的有两个方面:①处的代码如注意的是,在去记录前要先调用next()函数,定位到第一个记录,记录中列的索引是从1开始的,不是从0开始。 ②处如果出错,检查是不是忘记写流的关闭了。就是下面的那句。原因可能是,在其它的地方也调用了response.getOutputStread()。如果不关闭,这个调用是不能成功的。

时间: 2024-10-02 20:14:39

JSP显示图片问题的解决的相关文章

JSP显示图片问题时的如何解决

前提:使用JSP显示图片.图片的存储位置在数据库中. 方法:用JDBC连接数据库,从数据库读出数据,用输出流输出到页面. <%@ page contentType="text/html" language="java" %> <%@ page buffer="16kb" %> <%@ page import="java.sql.*"%> <%@ page import="ja

jsp-MySQL获取图片路径在JSP显示图片问题

问题描述 MySQL获取图片路径在JSP显示图片问题 从数据库获取的图片路径放到jsp中,当访问页面时却没有图片,只有这么个东西,实在不知道怎么解决,求大神指点! jsp代码如下: <%@page import="com.gxy.bean.GxyProduct"%> <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

win8不显示图片缩略图的解决方法

  最近有朋友反映在Windows 8系统中浏览图片时不显示缩略图,这到底是怎么回事呢?其实如果出现这种情况的话,要么就是电脑中毒了,要么就是相关缓存文件出了问题. 浏览文件时显示的缩略图,一般都存储在缓存文件夹中,但有时缓存文件会崩溃,这时就需要重建缓存文件. 重建Windows 8缩略图缓存方法一: 1.在Windows 8 Metro桌面右侧的搜索栏中键入"磁盘清理"找到磁盘清理,这点与Windows 7系统有所不同(需要右击C盘-属性-磁盘清理). 2.现在需要做的是在&quo

请问各位,JSP显示图片有的正常显示,有的是红叉怎么回事!!!!!!

问题描述 路径是正确的,估计是图片的问题,为什么有的图片不能显示,只有红叉显示的时候是设了格式的,因为老师说要4:3显示好看 解决方案 解决方案二:请再次检查文件名的大小写,显示红叉的原因就是找不到图片.解决方案三:你右键看一看图片的路径有没有错,一般都是路径错误才会又红叉的解决方案四:可以肯定的是图片的路径问题,右键图片看其URL,然后在服务器看对应的文件是否存在,大小写也是有区别的解决方案五:保证文件路径和文件名称都是英文的

win7系统下图片文件夹无法正常显示图片缩略图的方法

  缩略图就是对图片的一个缩略显示,把好多张图片,把它按照倍数缩放成一张张可视的整图,便于人们浏览的方便.缩略图用于在Web浏览器中更加迅速地装入图形或图片较多的网页.因其小巧,加载速度非常快,故用于快速浏览.相当于图片文件预览及目录的作用.在Windows系统中,为了提高被频繁浏览的缩略图的显示速度,系统会将这些被显示过的图片进行缓存,以便下次打开时直接读取缓存中的信息,但也非常容易引起系统缓存文件错误.也正因为这样引起win7系统预览图片时缩略图无法正常显示的问题.下面小编就为大家解答遇到上

win7系统下无法显示图片缩略图怎么办

  大家都知道,自从win7开始有个缩略图功能,只要鼠标移到文件夹上面,就会出现各个图片的缩略图,这为大家带来了很多的便利,我们想要找一个图片的时候,无需逐一打开查找,只要通过缩略图就可以找到了,所以说win7系统中的缩略图功能还是很有实用性的,所以一直延续到win10系统中.但是最近有win7旗舰版电脑的用户反映说,缩略图打不开了,图片无法显示,这该怎么办呢?这种问题会影响我们正常的工作效率,下面小编教大家win7旗舰版电脑中的图片不显示缩略图怎么办? win7系统下无法显示图片缩略图的解决方

已有jsp程序,怎样修改图片?jsp页面数据库内容显示不出来怎么解决?具体内容见描述

问题描述 已有jsp程序,怎样修改图片?jsp页面数据库内容显示不出来怎么解决?具体内容见描述 已有jsp程序,发布之后理应是但是我发布出来却是求大神指导这该如何解决?还有,已有的jsp程序,想要功能不变但是把图片换掉,使它看起来像是一个新的网站,该怎么换图片?急求大神!!感激不尽~ 解决方案 上面一张图片看不到. 改图片就是改img标签里的src部分.请参考:http://www.w3school.com.cn/tags/tag_img.asp 解决方案二: 估计连接数据库出了问题,你看看to

图片路径中含有中文在jsp下不能正常显示的原因及解决_JSP编程

如:<img src="/pic/lupload/img工行上传.jpg" />,图片路径正确,放到一个单独的html页面中也能正常打开,在jsp中就是不显示图片 原因在于没有在tomcat配置URIEncoding.修改方法: 在tomcat的server.xml中加入URIEncoding="utf-8"(网页的编码是utf-8) 复制代码 代码如下: <Connector port="8080" URIEncoding=&

基于JSP实现图片的数据库存储与显示

    基于JSP实现图片的数据库存储与显示 1.引言数据库应用程序,特别是基于WEB的数据库应用程序,常会涉及到图片信息的存储和显示.通常我们使用的方法是将所要显示的图片存在特定的目录下,在数据库中保存相应的图片的名称,在JSP中建立相应的数据源,利用数据库访问技术处理图片信息.但是,如果我们想动态的显示图片,上述方法就不能满足需要了.我们必须把图片存入数据库,然后通过编程动态地显示我们需要的图片.实际操作中,可以利用JSP的编程模式来实现图片的数据库存储和显示.2.     建立后台数据库