文字不多,但毕竟是自己总结的,希望对大家有点用!

    之所以想到写这个,是因为自己刚开始做附件上传的时候,在网上查阅资料,看了一推,可以说是五花八门,结果弄的一头雾水。我想很多人都有过这种感觉,当需要一样技术实现的时候,发现很多方法,并不是为了方法本身的如何实现而为难,而是不知道究竟该使用哪个方法,或者在哪种情况下,对应的方法更合适。

   所以,我不写方法的具体实现,只说方法挑选的事,呵呵!

 

目前常用的附件上传方法

1、自己写基本功能,实现。特点:灵活性好,自己主观性控制

2、使用第三方封装的方法 如Cos、FileUpload和SmartUpload,性能上最好的是Cos,FileUpload其次

      最常用的是FileUpload[直接在servlet中使用,或者struts的action中使用]

3、使用Struts自身封装后的FileUpload,经过Struts封装后,使用更加简单。

 

一般对于常用的简单附件上传[简单上传个图片什么的],就直接使用Struts封装FileUpload后的上传就可以。当然,如果你没使用struts框架,可以直接使用第三方的封装。对于比较复杂的附件上传[比如就像网易邮箱那种,显示样式有要求,可上传,可删除编辑的这种],有一些特殊要求的,就需要自己实现了。


补充:对于使用Struts的附件上传,如图片,存放数据库方法有两种

 一、文件上传到服务器,数据库存放路径---这个方法比较常用,推荐使用

 二、 文件直接存放到服务器[对于这种情况,Clob对应String,Blob对应Byte ,可以将拿到的File对象先转化为String或Byte然后存放]