struts2上传原理和实例

1.文件上传的原理:

表单元素的enctype属性指定的是表单数据的编码方式,该属性有3个值:

1)application/x-www-form-urlencoded:这是默认编码方式,它只处理表单域里的value属

性值,采用这种编码方式的表单会将表单域的值处理成URL编码方式。

2)multipart/form-data:这种编码方式的表单会以二进制流的方式来处理表单数据,这种

编码方式会把文件域指定文件的内容也封装到请求参数里。

3)text/plain:这种方式主要适用于直接通过表单发送邮件的方式。

文件上传是web应用经常用到的一个知识。原理是,通过为表单元素设置enctype=”multipart/form-data”属性,让表单提交的数据以二进制编码的方式提交,在接收此请求的Servlet中用二进制流来获取内容,就可以取得上传文件的内容,从而实现文件的上传。

在Java领域中,有两个常用的文件上传项目:一个是Apache组织Jakarta的Common-FileUpload组件(http://www.360docs.net/doc/info-c4649d950b1c59eef9c7b445.html /fileupload/),另一个是Oreilly组织的COS框架(http://www.360docs.net/doc/info-c4649d950b1c59eef9c7b445.html /cos/)。利用这两个框架都能很方便的实现文件的上传。

2.Struts2的文件上传:

Struts2并未提供自己的请求解析器,也就是就Struts2不会自己去处理multipart/form-data的请求,它需要调用其他请求解析器,将HTTP请求中的表单域解析出来。但Struts2在原有的上传解析器基础上做了进一步封装,更进一步简化了文件上传。

Struts2默认使用的是Jakarta的Common-FileUpload框架来上传文件,因此,要在web 应用中增加两个Jar文件:commons-fileupload-1.2.jar和commons-io-1.3.1.jar。它在原上传框架上做了进一步封装,简化了文件上传的代码实现,取消了不同上传框架上的编程差异。

如果要改成其它的文件上传框架,可以修改struts.multipart.parser常量的值为cos/pell,默认值是jakata。并在classpath中增加相应上传组件的类库。

2.1.步骤一:创建带上传表单域的页面

<%@page language="java"contentType="text/html;charset=UTF-8"%>

Struts2File Upload

1

免费下载该文档:struts2上传原理和实例
相关文档
Struts2完成文件的上传功能实例
Struts2完成文件的上传功能实例 - Struts2 完成文件的上传功能实例 在这里通过一个实例简单写一下 struts2 实现文件上传的流程。 首先通过手写的方式写一个上传的...
一个简单的struts2实例讲解
一个简单的struts2实例讲解_计算机软件应用_IT/计算机_专业资料。一个简单的 ...struts2 在其上进行构建 commons-fileupload-1.2.1.jar:文件上传组件,2.1....
Struts2框架工作原理及应用体会
Struts2框架工作原理及应用体会 - 产业与科技论坛 2012 年第 11 卷第 6 期 Struts2 框架工作原理及应用体会 □宋君 张家爱 【摘 Struts2 的工作原 要】...
通过代码实例跟我学Struts2框架从入门到精通——熟悉Struts2框架系统内自带的Demo示例
通过代码实例跟我学Struts2框架从入门到精通——熟悉Struts2框架系统内自带的Demo...比如说,你在看文档时看到了“文件上传”的章节,那 么你就可以参考项目中的 ...
第4章基于Struts2的个人信息管理系统项目实训
Struts2内置校验器的使用 Struts2内置校验器应用实例 5 3.4 Struts2的文件上传和下载 3.4.1 文件上传 3.4.2 文件下载 6 第4章 基于Struts2的个人信息管 ...
Struts2多个文件上传示例
Struts2多个文件上传示例 - 完整的示例,结合了commons-fileupload控件。... Struts2多个文件上传示例_IT/计算机_专业...实例如下: package com.upload; import ...
信息发布系统的设计与初步实现(基于JAVA STRUTS2框架)
信息发布系统的设计初步实现(基于JAVA STRUTS2框架) - 第一章 Struts2 的起源和发展 说到网络应用很难让人不联想到网络信息的浏览,自从 Internet 进入民用领 ...
struts2核心工作流程与原理
struts2核心工作流程与原理 - struts2 核心工作流程与原理 收藏 这是 Struts2 官方站点提供的 Struts 2 的整体结构。 一个请求在 Struts2 框架中的处...
Struts2入门教程(全新完整版)
Struts2入门教程(全新完整版)_计算机软件及应用_IT/...实例,并不是用户实现的业务控制器,而是 Action 代理...文件上传组件,2.1.6 版本后必须加入此 jar 包 ...
Struts1和Struts2的文件上传
Struts1和Struts2的文件上传_计算机软件及应用_IT/计算机_专业资料。详细介绍...Form实例 UploadForm uploadForm = (UploadForm) form; // 获取表单中上传的...