紧急求救,遇到一个非常难以理解的问题

shan__le 2011-12-01 04:37:33
jsp+mysql数据库图片读取的问题
我图片上传到数据库以后,第一个是存储问题,容量不能超过500K,如何调大这个容量,这个不是关键

另外一个问题就很奇怪了,我读取图片的时候,同样的一个图片,都是jpg的,大小大概70K,第一条数据可以读取,第二条就不行,图片不能正常显示,同样的图片分两条记录上传到数据库,一个能显示,一个不能显示,这个是为什么?
源码如下
这个是读取数据库图片的显示

<%@ page contentType="text/html;charset=UTF-8" %>
<%@ page import="com.djfocus.database.DataStore" %>
<%@ taglib uri="/djfocus" prefix="dj" %>
<%@ include file="/djfocus/initEnv.jsp" %>
<%@ page import="java.sql.*"%>
<%! String user="";%>
<%
user = (String)session.getAttribute("user");
String treeNodeCode = request.getParameter("treeNodeCode");
DataStore ds=new DataStore();
String id=request.getParameter("id")+"";
if(!id.equals("")){
String sql="select pic from cydc_cm where id="+id;
ds.setCommand(sql,"oa");
ds.execute();
if(ds.next()){
Blob b=ds.getBlob("pic");
long size=b.length();
byte[] bs=b.getBytes(1,(int)size);
response.setContentType("image/jpg");
javax.servlet.ServletOutputStream os = response.getOutputStream();
os.write(bs);
os.close();
}
}
%>


<img src="Blob_pic.jsp?id=<%=id%>" width="400" height="300">
调用方法
...全文
175 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
qybao 2011-12-02
  • 打赏
  • 举报
回复
两张图片上传,数据库对应的id应该不同吧
你只按一个id查询,另一个id的图片当然没被查到,也就不会被显示了
码帮主 2011-12-02
  • 打赏
  • 举报
回复
1.在后台程序也就是java程序中先尝试一下,看看图片的打印数据是不是都显示正常,不是一次哦,而是多次哦
2.查看数据库里面的数据存取,数据是否合理
3.还有就是你在程序中取数据的时候,数据库连接是不是关闭太早,只是取到一条数据
CSDW 2011-12-02
  • 打赏
  • 举报
回复
断点试试,也许你根本就没有拿到第二张图片的数据
wangjiangbo2 2011-12-02
  • 打赏
  • 举报
回复
如果你是在页面里同时显示2张图片,<img src>指向的位置不能是同一个。

<img src="Blob_pic.jsp?id=<%=id%>" width="400" height="300">
<img src="Blob_pic1.jsp?id=<%=id%>" width="400" height="300">
shan__le 2011-12-01
  • 打赏
  • 举报
回复
又从新实验了几个用QQ切图的图片,直接保存以后上传,居然又是好的,疯了
shan__le 2011-12-01
  • 打赏
  • 举报
回复
是保存在数据库里的,不是文件夹形式,很怪异的问题
ylovep 2011-12-01
  • 打赏
  • 举报
回复
楼主尝试一下在后台打印这个2个图片的名称 看看是否不用
shegaoqiang 2011-12-01
  • 打赏
  • 举报
回复
第二条图片上传成功没,查询成功没
lmyw992643465 2011-12-01
  • 打赏
  • 举报
回复
这个跟数据库应该没有关系啦!!!
shan__le 2011-12-01
  • 打赏
  • 举报
回复
还存在成功率?这又不是玩游戏强装备,崩溃了
先吃饭,晚上再来找原因。希望哪位大神能够有经验,给看看。
shan__le 2011-12-01
  • 打赏
  • 举报
回复
图片肯定没问题,因为是同样的图片,传了两次,就一个能行,一个不行
lmyw992643465 2011-12-01
  • 打赏
  • 举报
回复
图片的问题,换一张试试吧!!!
shan__le 2011-12-01
  • 打赏
  • 举报
回复
就是同样的一个图片,上传到数据里,显示的时候,一个正常能显示,一个不能显示,为什么?数据库是mysql
litiebiao2012 2011-12-01
  • 打赏
  • 举报
回复
你库里面两张图片记录对应的两个不同的id
我看你代码里面的逻辑是取到一个id
去库里面查 只能查到一个记录的
然后发送到client端 因此只显示一张

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧