jspSmartUpload上传下载全攻略: http://www.knowsky.com/3136.html
这则帖子介绍了这个组建的基本用法。
以下是我的一些使用经验:
1.<<jspSmartUpload上传下载全攻略>>下载的例子中如果把su.setContentDisposition(null)注释掉,那么response头中:
Content-Disposition: filename=test.doc
Content-Type: application/x-msdownload;charset=gb2312
浏览器(如IE)会直接将下载的东西打开在内嵌的word程序中。
如果没有注释掉,则response头中:
Content-Disposition: attachment; filename=test.doc
Content-Type: application/x-msdownload;charset=gb2312
多了"attachment; ",浏览器会弹出一个对话框,让用户选择直接打开该文件还是保存下来等。
2.<<jspSmartUpload上传下载全攻略>>下载的例子中提到:
注意,执行下载的页面,在Java脚本范围外(即<% ... %>之外),不要包含HTML代码、空格、回车或换行等字符,有的话将不能正确下载。不信的话,可以在上述源码中%><%之间加入一个换行符,再下载一下,保证出错。因为它影响了返回给浏览器的数据流,导致解析出错。
经过试验,并不正确,即使在%><%之间加上空行、<html>等都不会出错(这些加上的东西被丢弃掉了,没有在response中返回)。原因是jsp中的out对象是个JspWriter,而JspWriter默认是处于buffer模式,且autoFlush="true",输出少量的空行、<html>等字符不足以撑满一个buffer,所以JspWriter还不会调用response.getWriter()去创建JspWriter需要关联的PrintWriter对象(参见JspWriter api doc)。而在do_download.jsp接下来的代码中,su.downloadFile()中却调用了response.getOutputStream(),输出了整个文件内容,因此jsp中的out中的内容会被丢弃而不会输出。
3.<<jspSmartUpload上传下载全攻略>>中:
SmartUpload类的getSize()方法返回的是请求内容的总长度,而不是“上传文件数据的总长度”。
4. jspsmartupload存在的问题:
(1)对中文支持的不足(文件名中含中文的文件的上传、下载等);
(2)容易出现OutOfMemoryError,因为SmartUpload类在upload()方法中会将请求的内容一次性全部读入到内存:
m_totalBytes = m_request.getContentLength();
m_binArray = new byte[m_totalBytes];
(3)功能较简单,编程实现上不够正规。
因此,不推荐再使用jspsmartupload组件,应该转而使用apache的commons fileupload, struts中的实现或一些ajax框架中的实现等。
分享到:
相关推荐
采用jspSmartUpload 组件实现的上传下载的完整实例 下载即可运行,但是这个压缩包不支持中文名称的文件下载功能,我上传了一个可以下载中文的不会乱码的jspSmartUpload 组件,网址:...
使用jspSmartUpload组件在jsp中实现上传和下载
jspSmartUpload上传下载组件及使用方法 jspSmartUpload 上传组件 下载组件 JSP Java
jspSmartUpload组件是应用JSP进行B/S程序开发过程中经常使用的上传下载组件,它使用简单,方便
JspSmartUpload组件+源码+使用攻略,让你轻松掌握JspSmartUpload的上传
<br> jspSmartUpload是由www.jspsmart.com网站开发的一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。该组件有以下几个特点: <br><br>1、使用简单。在JSP文件中仅仅书写三五行...
使用jspSmartUpload实现文件上传下载,包含SmartUpload方法注解、上传示例及组件包
接着重新启动Tomcat,这样就可以在JSP文件中使用jspSmartUpload组件了<br> 按上述方法安装后,只有webapps/jspsmartupload目录下的程序可以使用jspSmartUpload组件,如果想让Tomcat服务器的所有Web应用程序都能用它...
原始的jspSmartupload组件不支持中文上传,所以我把这个源码进行修改后,现在可以支持中文上传了,你的工程也必须是在统一的utf-8的编码环境下,因为我做的修改,就是将中文用utf-8进行编码。 我只测试了上传功能,...
jspSmartUpload上传下载组件(*.jar)
文件上传组件JspSmartUpload<br>文件上传组件JspSmartUpload
jspSmartUpload上传下载全攻略.doc
包括三个版本+相关实例<br><br>jspsmartupload-javaword的.jar<br>smartupload-CSDN的.jar<br>smartUpload-据说是修正中文错误.jar<br>=======================================================<br>在JSP 中上传...
此为zip压缩版jspSmartUpload组件。jspSmartUpload是一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。
jspSmartUpload组件反编译后源码<br>不错<br>有需要的可以下载
jspSmartUpload 组件 源代码,并对源代码进行了修改,使其在下载中文文件时,不会出现乱码。使用方法参见http://blog.sina.com.cn/s/blog_4cc16fc50100bwby.html
jspSmartUpload上传下载全攻略 jspSmartUpload上传下载全攻略 jspSmartUpload上传下载全攻略
jspSmartUpload组件上传下载详解
SmartUpload组件用于上传和下载文件<br>包含源代码,及使用示例
使用JSP实现上传下载文件jspSmartUpload 里面讲述怎么用jsp实现