Struts2文件上传的原理
Struts 2是通过Commons FileUpload文件上传。Commons FileUpload通过将HTTP的数据保存到临时文件夹,然后Struts使用fileUpload拦截器将文件绑定到Action的实例中。从而我们就能够以本地文件方式的操作浏览器上传的文件。
基本使用步骤:
- 添加fileUpload拦截器
- 解决Commons FileUpload的依赖包
- 页面使用file类型标签
- Action类中使用set方法接收file, filename, fileContentType
http://struts.apache.org/2.3.1.2/docs/file-upload.html
http://struts.apache.org/2.3.1.2/docs/file-upload-interceptor.html
使用的注意点:
1.struts2的文件上传支持多个文件,在Action类中使用文件数组或List接收。
http://www.blogjava.net/max/archive/2007/03/21/105124.html
2.设置fileUpload参数可以过滤文件类型和大小:allowedTypes, maximumSize(以字节为单位)。
< action name ="fileUpload" class ="tutorial.FileUploadAction" >
< interceptor-ref name ="fileUpload" >
< param name ="allowedTypes" >
image/bmp,image/png,image/gif,image/jpeg
</ param >
<param name="maximumSize">500000</param>
</ interceptor-ref >
< interceptor-ref name ="defaultStack" />
< result name ="input" > /FileUpload.jsp </ result >
< result name ="success" > /ShowUpload.jsp </ result >
</ action >
allowedType指定的是FileContentType,是依靠Commons FileUpload中德DiskFileItem的属性获取。这里的ContentType是通过上传的文件后缀判断的,并没有实际检查文件类型,所以要确保类型正确需要更多处理。
常用的ContentType:
文件类型 |
常见后缀 |
contentType |
Excel2007 |
xlsx |
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
Excel2003 |
xls |
application/vnd.ms-excel
|
Word2003 |
doc |
application/msword
|
分享到:
相关推荐
Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java ...以上就是使用Struts2框架实现文件上传下载的基本步骤和关键知识点。在实际开发中,可以根据项目需求进行调整和优化,确保功能的稳定性和安全性。
在Struts2框架下实现文件上传,主要涉及到以下几个核心概念和技术点: 1. **.struts2配置**:在Struts2框架中,需要在`struts.xml`配置文件中添加相应的action配置,声明文件上传的处理方法。通常,你需要设置`...
在这个"Struts2之struts2文件上传详解案例struts011"中,我们将深入探讨如何实现这一功能。 首先,我们需要了解Struts2中的Action类,它是处理用户请求的核心组件。为了支持文件上传,我们需要创建一个继承自`org....
在本篇中,我们将深入探讨Struts2实现文件上传的原理、步骤以及需要注意的关键点。 首先,理解文件上传的基本流程: 1. 用户在表单中选择文件,并提交表单。 2. Struts2 框架接收到请求,解析请求体中的文件数据。...
在Struts2中,文件上传和下载是常见的功能需求,对于用户交互和数据交换至关重要。以下是对这些知识点的详细阐述: 1. **文件上传**: 在Struts2中,文件上传主要依赖于`Commons FileUpload`库,它是一个Apache提供...
在Struts2中,文件上传功能是一个常见的需求,例如用户可能需要上传图片、文档或其他类型的文件。本教程将深入浅出地讲解如何在Struts2中实现文件上传,并提供一个简单的实例来帮助理解。 1. **Struts2文件上传概述...
### Struts2文件上传知识点 1. **Struts2的form标签配置** 在Struts2中进行文件上传时,必须在标签中指定`enctype="multipart/form-data"`,这样表单的数据才会以二进制流的形式发送,而不是默认的URL编码。在给定...
Struts2文件上传程序是一个典型的企业级Web应用开发中的功能,它允许用户通过网页将本地文件上传到服务器。Struts2作为一款强大的MVC(Model-View-Controller)框架,提供了丰富的功能支持,包括文件上传。这个示例...
本文将详细讲解如何在Struts2中实现文件上传功能,并探讨相关知识点。 1. **Struts2 Action类配置**: 在Struts2中,我们需要创建一个Action类来处理用户请求。文件上传时,Action类通常会包含一个或多个`java.io....
在Struts2中,文件上传和下载是常见的功能需求,主要用于处理用户在Web表单中提交的文件,如图片、文档等。下面将详细介绍Struts2中文件上传和下载的实现方法。 ### 1. 文件上传 #### 1.1 配置Struts2 首先,我们...
以上就是Struts2中单文件和多文件上传的基本实现方式及相关知识点。通过这种方式,开发者能够方便地处理用户上传的文件,实现Web应用的各种功能。记得在实际开发中根据项目需求进行相应的优化和安全控制。
综上所述,Struts2文件上传下载和表单重复提交涉及多个技术点,包括Struts2的配置、文件操作、HTTP响应头设置、安全性和异常处理。理解并熟练掌握这些知识点,对于构建健壮的Web应用程序至关重要。
SWFUpload 是一款开源的Flash上传组件,...通过上述步骤和注意事项,你可以利用SWFUpload和Struts2构建一个功能强大且安全的多文件上传功能。在实际项目中,根据需求进行适当的定制和优化,以满足用户需求和系统安全。
以上就是 Struts2 实现单个文件上传的基本步骤和关键知识点。对于初学者来说,理解这些内容有助于掌握 Struts2 框架和文件上传的基本操作。在实际开发中,可能还需要考虑更多细节,如多文件上传、文件重命名策略、...
在处理文件上传时,还需要注意以下几点: 1. **文件大小限制**:默认情况下,`Commons FileUpload`会限制上传文件的大小。如果需要上传大文件,需要自定义配置。 2. **安全性**:对上传的文件进行检查,防止上传恶意...
以上就是基于Struts2实现头像上传的基本步骤和关键知识点,包括Struts2的配置、Action类的编写、前端表单设计以及文件上传过程中的常见问题。通过这样的流程,开发者可以构建出稳定且功能完善的文件上传系统。
以下是对Struts2文件上传进行详细解释的知识点: 1. **Struts2文件上传原理**: - Struts2使用Apache的Commons FileUpload库来处理文件上传。这个库解析HTTP请求中的multipart/form-data内容,将每个文件作为单独...
以上就是关于“Struts jQuery AJAX 文件上传”的核心知识点。通过这种方式,开发者可以创建更加流畅、高效的Web应用,提供给用户更好的交互体验。在实际开发中,还可以结合其他技术和最佳实践,如使用第三方库如...
Java Struts2 文件上传是Java Web开发中常见的一项功能,特别是在处理大文件时,需要考虑性能和用户体验。Struts2框架提供了丰富的插件和配置来支持文件上传,其中包括进度条显示,以提升用户交互体验。以下是对这个...