锁定老帖子 主题:如何实现文件上传
该帖已经被评为隐藏帖
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
作者 | 正文 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-07
如何实现文件上传开发Web程序通常需要文件上传功能,现在有很多免费的文件上传组件,其中使用比较多的也是非常著名的有:
以下部分内容来自http://www.blogjava.net/caixuetao/articles/30841.html) 它们的性能比较如下:
从上述的表格对比中可以看出Cos始终保持着良好的性能。在上传量较小(容量<2M,这是最常出现的情况)时,Cos比FileUpload性能并没有好很多,但SmartUpload就已经开始显出弱势。 随着容量的增大,FileUpload和SmartUpload的性能下降非常快,直到200M容量时,SmartUpload已经不堪重负崩溃了,而Cos此时的花费时间比FileUpload少了20多秒,不能不说在本次的评测中,Cos的性能位居第一。 通过对三种流行的上传组件进行对比,我认为选用Cos是比较好的。在实际的项目中,可以把上传的文件放到文件夹,文件路径存于数据库中以便于管理。 如果需要把文件上传到数据库也很简单,从Cos中已经得到了上传文件(java.io.File),其后的操作很平常所做的一样: 通过File得到inputStream,存到数据库的blob或Clob字段即可。 对于使用Struts的项目,我觉得还是使用FileUpload比较好,因为Struts天生集成了FileUpload的功能,使用FileUpload会带来很多的便利。而如果想要开发独立的上传组件,则用Cos是最好的选择,可以在Cos的基础上封装一层,暴露给业务程序员的只是一些简单易用的API,而且可以给这些API加上自定义的javaDoc,这对于实际的开发和将来的扩展都是非常方便的。 以下使用cos组件简单的实现文件上传功能: 1. 将下载的cos.jar文件所在目录加入到环境变量classpath中<o:p></o:p>
3. 实现上传文件功能可以写一个Servlet, 这里简单起见,写成一个upload.jsp文件:
4. 将以上两个文件放到tomcat安装目录\webapps目录下的一个文件夹如uploadExample下即可<o:p></o:p> 附:(http://blog.csdn.net/hdhero/archive/2005/03/22/326405.aspx) 一.SmartUpload组件例子代码:<o:p></o:p>
二.commons-fileupload组件<o:p></o:p>
声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-07
呵呵 总结的很仔细啊 支持一下.我用SmartUpload做上传的时候确实觉得不好用于大数据量的传输.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-07
那堆框是怎么回事
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-07
我觉得总结的有一些疑问。
上传文件不仅是耗时问题,还有一个耗内存的问题,这一点在大文件处理时很重要。 似乎没有考虑,如果考虑这一点,可能那个处理时间也有变化了。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-07
这个测试结果是不是有点误导人,不同的服务器应该是不一样的,这个测试是在什么服务器上做的? 服务器的最大内存设置是多少?这些最起码应该给出来,这样才全面一点
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-26
首先还是表示感谢,顶一下,Cos 以前没听说过,这下又多了个选择
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-27
NoName 写道 首先还是表示感谢,顶一下,Cos 以前没听说过,这下又多了个选择
确实,支持以下 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-03-27
以前都用fileupload,有机会看看cos,不知道lz测试的机器配置怎么样
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-05-08
Cecily 写道: 呵呵 总结的很仔细啊 支持一下.我用SmartUpload做上传的时候确实觉得不好用于大数据量的传输.
支持一下,以前一个项目smartUpload大于20M时经常出现无响应的状况,的确让人苦恼。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
发表时间:2007-05-08
为什么有时候用smartUpload内存会100%呢
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
返回顶楼 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
浏览 6553 次