FileUpload之FileItem

[size=medium]
FileItem类主要是封装了一个File Item或者是FormItem,它的主要的
方法如下,需要说明的是对于FormItem类型的,getName会得到null,
getContentType会得到null,如果是FileItem类型的,getName会得到
文件的全路径,getContentType会得到文件的类型。 然后以前在使用的时候
因为是数据是直接从InputStream里面读取的,现在看了代码实现,发现
是如果数据在内存里面,则直接返回,如果数据不在内存里面,则再读取一
下文件,然后将数据返回。
[/size]
[size=medium]
FileItem类主要是定义了接口,这些都是一些比较常见的操作。
DiskFileItem类是它的实现,也是平常默认返回的FileItem类型,里面感觉比较
值得注意的是write函数,它可以直接将数据写入到指定的文件里面去。但是对于
在内存中的数据则是可以写无数次均是可以的,但如果数据不在内存中,则里面的
实现是先尝试使用rename操作,如果失败的话再尝试着采用copy流的形式来进行。
但是一般情况下rename操作都是可以成功的,所以在这个操作被调用后temp里面的
文件很可能就不在了,所以调用它时要特别小心。
[/size]
[size=medium]
DefaultFileItem类则是完全继承DiskFileItem这个类,只有构造函数,其他则没有
从新实现,所以这个感觉很没有必要,Fileupload也将它设置为Deprecated。
[/size]

[img]http://dl.iteye.com/upload/attachment/273282/94354ff9-670e-34d3-bd1e-dda649acbf1c.gif[/img]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值