锁定老帖子 主题:使用FileUpload组件上传文件
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-04-13
DiskFileUpload 已废弃 建议使用ServletFileUpload
|
|
返回顶楼 | |
发表时间:2007-04-13
InputStream is=null; String sql="select content from wangjinbin.upload where name=? for update"; PreparedStatement pst = null; ResultSet rst = null; try { pst = conn.prepareStatement(sql); pst.setString(1,name); rst=pst.executeQuery(); if(rst.next()) { byte[] b=null; is=rst.getBinaryStream("content"); while( is.available()>0) { b=new byte[is.available()]; is.read(b); ServletOutputStream outStream = response.getOutputStream(); outStream.write(b); outStream.close(); } is.close(); } rst.close(); pst.close(); conn.close(); 这是我下载得部分代码,我用得是mysql,在我执行下载得时候老出现内存溢出,最后发现问题出在rst=pst.executeQuery();这句上。看了robbin以前得帖子才知道mysql的驱动在执行这句的时候试图将符合条件的数据全部加载到内存当中,所以内存溢出就不足为奇。不知道其他人是怎么解决的?请。 驱动5.04,5.05都试了都不行。 |
|
返回顶楼 | |
发表时间:2007-04-14
為何使用元件,組件或是lib? 檔案上傳的功能很簡單阿,參考rfc 1867 就知道運作原理的
歡迎參觀我的網站: http://lukeshei.iteye.com 歡迎參觀我的blog: http://rd-program.blogspot.com |
|
返回顶楼 | |