从数据库中下载大字段到客户端的问题。急!!

windowsjava 2003-10-16 09:22:15
表office_document的atta_content存的是一附件。
JSP页面中的代码如下:
response.setContentType(CONTENT_TYPE);
Connection conn=null;
try{
ConnPool cp=new ConnPool();
conn=cp.getConnection();
String sql="";
sql="select atta_content from office_document where id="+id;

Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(sql);
rs.next();

java.sql.Blob blob=rs.getBlob(1);
byte[] b=blob.getBytes((long)1,(int)blob.length());
ServletOutputStream sos=response.getOutputStream();
sos.write(b);
sos.flush();
sos.close();
rs.close();
stmt.close();

}catch(Exception e){}
finally{conn.close();}

以上可以正常下载。
即当用户点击进入此页面时,出现“文件下载”的对话框,询问你是要打开文件,还是要保存到计算机上,相信大家都见过这个对话框的。
但现在发现一问题,就是这时如果用户让这个对话框停在这,不按上面的任何一按纽,同时,另一用户也这样,即同时有两个对话框放在那不动,那么我的服务器就基本上不会处理其它的请求了,那怕是一个很小的页面也不会出来了,就像死了一样。

请问,是怎么回事?

环境:weblogic8+oracle9
...全文
47 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
windowsjava 2003-10-16
  • 打赏
  • 举报
回复
这时服务器不会处理其它请求了,后台报错如下:

<2003-10-16 下午21时27分36秒 CST> <Warning> <WebLogicServer> <BEA-000337> <Execu
teThread: '14' for queue: 'weblogic.kernel.Default' has been busy for "833" seco
nds working on the request "Http Request: /office/down.jsp", which is more than
the configured time (StuckThreadMaxTime) of "600" seconds.>

/office/down.jsp,就是我的JSP页面。

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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