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

前提:使用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()。如果不关闭,这个调用是不能成功的。

时间: 2025-01-07 17:00:19

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

JSP显示图片问题的解决

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

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

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

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

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

处理jsp显示文字过长问题的解决方法_JSP编程

复制代码 代码如下: <tr>    <td height="60px;" width="20%" align="right" valign="top">      <font style="font-weight: bold;">标题:</font>     </td>    <td height="60px;" wid

网页图片显示不出来的几种解决方法

网络上丰富的图文资源极大地丰富了我们的生活,也提供了许多生动的信息.然而,许多网友在浏览网页时遇到网页图片不能显示的问题,给网络应用带来了很大的不便.造成网页图片不能显示的原因很多,现在,我们通过多种方式进行探索和解决. 首先,我们可以尝试使用金山卫士对系统进行修复,系统修复中包含了IE修复,可以解决浏览器出错引起的网页图片无法显示问题. 打开金山卫士,点击"查杀木马"图标,再点击"系统修复"选项卡即可. 扫描完成后点击"修复"即可解决一些网页不

win8系统使用bing搜索网页不显示图片与视频缩略图的3种解决方法

  win8系统使用bing搜索网页不显示图片与视频,具体现象如下所示: 解决方法: 方法一:换用IE浏览器重新登陆一下Bing,看看效果. 方法二:到Bing首页的设置里,恢复一下默认设置. 方法三:如果是bing搜索客户端出现了问题,可以重新安装该应用进行解决. 备注:我们首先要查出是否必应搜索发生问题,然后再进行解决! 以上就是win8系统使用bing搜索网页不显示图片与视频缩略图的解决方法全部内容的介绍,有同样问题的朋友可以按照上述的方法进行解决!

java类的问题-java开发时,显示图片总要在放大或所放窗口后才会显示出来

问题描述 java开发时,显示图片总要在放大或所放窗口后才会显示出来 怎么解决java开发时,显示图片总要在放大或所放窗口后才会显示出来

Word不显示图片怎么办?word不显示图片解决办法

  打开word文件时,有时候会遇到不显示图片的情况.word文件中图片无法显示有什么解决办法? 下面小编简单为大家总结一下几种原因及解决方法. 情况一: 可能是由于正在普通视图或大纲视图中工作. 解决方法:若要查看页眉.页脚或图形对象等对象在打印页中的位置,请切换到页面视图.若要查看这些对象在 Web 版式视图中的显示情况,请切换到 Web 版式视图. 情况二: 屏幕上显示的可能是链接的嵌入式图形的域代码.域代码是括在域字符 ({}) 中的指令. 解决方法:若要关闭域代码并显示图形,请按 Al

获取三星手机本地相册图片时,如何解决图片的旋转问题

问题描述 获取三星手机本地相册图片时,如何解决图片的旋转问题 用SharePhoto获取本地相册图片时,三星手机显示的图片总是被旋转90度,如何在获取本地图片的时候直接显示正常的图样,求帮忙大神解答 解决方案 解决三星手机拍照后裁剪图片时横屏问题三星等手机拍照选取图片,图片反转的问题 解决方案二: 你是不是把图片的文件名写成.png了?改成.jpg试试.JPEG图片里面Exif字段存储图片方便,下面这个方法你可以参考一下 public static int getCameraPhotoOrien