apache commons fileupload 1.3.1(四)Portlet部分

近段时间,对apache commons fileupload的源码做了深入的了解,在此把一些见解与大家分享。

今天就简介一下commons fileupload的Portlet部分。


首先我们来看看Portlet是什么?

Portlet是基于Java的Web组件,由Portlet容器管理,并由容器处理请求,生产动态内容。作为利用Servlets进行Web应用编程的下一步,Portlets实现了Web应用的模块化和用户中心化。


Portlet部分是为portlet容器环境实现文件上传功能的部分,其由request解析单一部分组成。

但我们应该先来了解一下portlet所依赖的以下commons-fileupload或commons-io类:

org.apache.commons.fileupload.FileUploadBase

该类实现了一些基本的FileUpload功能,但其自身不处理解析部分。其主要工作就是从http中解析出各个属性然后根据属性来调用和传递具体的FileItemFactory类对象来实现解析文件上传的功能。


org.apache.commons.fileupload.FileUpload

该类代理了FileItemFactory,并通过继承FileUploadBase来实现各种通用解析功能。其内部只有FileItemFactory对象的gettersetter方法,以方便其子类使用。


org.apache.commons.fileupload.UploadContext

该接口解决了RequestContextgetContentLength不准确或丢失的问题。使用该接口可以实现向后兼容。但在fileupload2.x中将会被新的方法代替。


org.apache.commons.fileupload.FileItemFactory

该接口提供创建FileItem的方法。


org.apache.commons.fileupload.FileItemIterator

该接口是一个文件对象的迭代器,可迭代返回FileItemStream


org.apache.commons.fileupload.FileUploadException

当解析数据包出现错误时会抛出此异常。


request解析部分:

org.apache.commons.fileupload.portlet.PortletRequestContext

该类实现了UploadContextRequestContext的所有方法,其针对portlet所使用的ActionRequest进行request的处理,主要任务是对request信息进行大类的划分获取。

 

org.apache.commons.fileupload.portlet.PortletFileUpload

该类通过PortletRequestContextrequest信息进行大类的划分提取然后调用其祖父类FileUploadBase的同名方法进行处理,以实现具体针对portlet容器的文件上传功能。




ONE FOR IT是一个呆萌CTO打理的资讯读物,每天只为你准备一篇IT行业新鲜资讯。互联网的前沿,一篇就够了。(ID:OFI)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值