文件上传和下载-ServletFileUpload fileupload上传大文件

当我们在 HTML表单中选择本地文件之后点击“提交”按钮则会将文件上传到服务器中,此时该 HTTP 请求正文的数据类型就是multipart/form-data 型的。而在 Servlet 技术中,该 HTTP 请求会被 Servlet 容器(如Tomcat)包装成 HttpServletRequest 对象,再由端所请求的相应 Servlet 进行处理。

但是,如果此时我们在服务器端编写的 Servlet 一点点地解析这个HTTP 请求,分离出其中的文本表单和上传的文件类型,这未免有点低效。于是,我们可以使用 Apache 开源上传软件包fileupload 来简化这一过程,直接使用即可。下载地址:http://commons.apache.org/fileupload/

在 fileupload 包中, HTTP请求中的复杂表单元素都被看做一个 FileItem 对象;FileItem 对象必须由 ServletFileUpload 类中的parseRequest() 方法解析 HTTP 请求(即被包装之后的 HttpServletRequest对象)出来,即分离出具体的文本表单和上传文件;而 ServletFileUpload 对象的创建需要依赖于FileItemFactory 工厂将获得的上传文件 FileItem 对象保存至服务器硬盘,即 DiskFileItem对象。

DiskFileItemFactory是创建FileItem对象的工厂包括方法:

————1.public voidsetSizeThreshold(int?sizeThreshold)
设置内存缓冲区的大小,默认值为10K,如果文件大于10K,将使用临时文件缓

存上传文件.

2.public voidsetRepository(java.io.File repository)
文件上传和下载-ServletFileUpload fileupload上传大文件
指定临时文件目录

3.publicDiskFileItemFactory();

ServletFileUpload负责处理上传的文件数据,并将表单中每个输入项封装成

一个FileItem对象中.

常用方法:

1.booleanisMultipartContent(HttpservletRequest request)
判断上传表单是否为上传表单类型

2.ListparseRequest(HttpServletRequest request)
对requests对象进行解析,并把表单中的每一个输入项包装成一个fileItem

对象,并返回一个保存了所有FileItem的list集合.

3.setFileSizeMax(longfileSizeMax)设置上传文件最大值

4.setSizeMax(longsizeMax)设置上传文件总量的最大值

5.setHeaderEncoding()设置编码格式

  

爱华网本文地址 » http://www.413yy.cn/a/25101016/314547.html

更多阅读

上千部免费医学书籍在线阅读和下载大全 医学书籍在线阅读

【免费医学书籍在线阅读和下载】《生死平衡》《养生智慧》《家庭饮食百忌》《家庭保健药膳制作400法》《儿童牙齿保健常识问答》《青春期》《心理健康常识》《中国妈妈》《妇科常见病》《儿科常见病》《图说中医》《实用中药炮制学

世界上最大的天文无线电望远镜 世界最大天文望远镜

在波多黎各旅行,真正令我震惊和感动的并不是那里的美丽风光,而是美国康奈尔大学工程学院ECE(电子电脑科学工程)专业建立在那里的地球上最大的天文无线电望远镜。当我们踏上波多黎各土地的时候,女儿谈起她大学时曾经学过的天文无线电知

世界上十大最令人难以置信的洞穴 虽然难以置信

全球最不可思议的洞穴发现钟乳石和石笋的洞穴。 形成的钟乳石是一种挂在天花板的洞穴,温泉,或人为结构如桥梁和矿山。 石笋是一个类型的形成,从洞穴里的地板由于材料沉积在地板上的积累从天花板肉汁。包含钟乳石和石笋是一个巨大的

声明:《文件上传和下载-ServletFileUpload fileupload上传大文件》为网友沉迷于中分享!如侵犯到您的合法权益请联系我们删除