- 浏览: 188155 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (321)
- eclipse (4)
- idea (2)
- Html (8)
- Css (14)
- Javascript (8)
- Jquery (6)
- Ajax Json (4)
- Bootstrap (0)
- EasyUI (0)
- Layui (0)
- 数据结构 (0)
- Java (46)
- DesPattern (24)
- Algorithm (2)
- Jdbc (8)
- Jsp servlet (13)
- Struts2 (17)
- Hibernate (11)
- Spring (5)
- S2SH (1)
- SpringMVC (4)
- SpringBoot (11)
- WebService CXF (4)
- Poi (2)
- JFreeChart (0)
- Shiro (6)
- Lucene (5)
- ElasticSearch (0)
- JMS ActiveMQ (3)
- HttpClient (5)
- Activiti (0)
- SpringCloud (11)
- Dubbo (6)
- Docker (0)
- MySQL (27)
- Oracle (18)
- Redis (5)
- Mybatis (11)
- SSM (1)
- CentOS (10)
- Ant (2)
- Maven (4)
- Log4j (7)
- XML (5)
最新评论
1. struts2文件上传和下载
2. 大文件上传
3. 多文件上传
4. struts2文件下载
1) Struts2文件上传 Struts2文件上传基于Struts2拦截器实现; Struts2文件上传使用的是fileupload组件; Form配置enctype="multipart/form-data"; Struts2获取上传文件:name(name是文件表单的name) Struts2获取上传文件名:name+FileName; Struts2获取上传文件的类型:name+ContentType; 2) 配置文件的大小及类型 <paramname="allowedTypes">image/bmp,image/x-png,image/gif,image/jpg,image/jpeg</param> <paramname="maximumSize">81101</param> <s:fielderror></s:fielderror>
2. 大文件上传
Struts2文件上传大小默认是2M; <constantname="struts.multipart.maxSize"value="20000000"></constant>
FileUploadAction.java package com.andrew.action; import java.io.File; import org.apache.commons.io.FileUtils; import com.opensymphony.xwork2.ActionSupport; public class FileUploadAction extends ActionSupport { private File andrew; // 文件 private String andrewFileName; // 文件名 private String andrewContentType; // 文件类型 public File getandrew() { return andrew; } public void setandrew(File andrew) { this.andrew = andrew; } public String getandrewFileName() { return andrewFileName; } public void setandrewFileName(String andrewFileName) { this.andrewFileName = andrewFileName; } public String getandrewContentType() { return andrewContentType; } public void setandrewContentType(String andrewContentType) { this.andrewContentType = andrewContentType; } @Override public String execute() throws Exception { System.out.println("文件名:" + andrewFileName); System.out.println("文件类型:" + andrewContentType); String filePath="E:/" + andrewFileName; File saveFile = new File(filePath); FileUtils.copyFile(andrew, saveFile); return SUCCESS; } } struts.xml <constant name="struts.multipart.maxSize" value="20000000"></constant> <package name="manager" extends="struts-default"> <action name="upload" class="com.andrew.action.FileUploadAction"> <result name="success">/success.jsp</result> <result name="input">/fileupload.jsp</result> <interceptor-ref name="fileUpload"> <param name="allowedTypes">image/bmp,image/x-png,image/gif,image/jpg,image/jpeg</param> <param name="maximumSize">81101</param> </interceptor-ref> <interceptor-ref name="defaultStack"></interceptor-ref> </action> </package> fileupload.jsp <%@taglib prefix="s" uri="/struts-tags" %> <s:fielderror></s:fielderror> <form action="upload" method="post" enctype="multipart/form-data"> 文件:<input type="file" name="andrew"/><br/> <input type="submit" value="提交"/> </form> success.jsp 文件上传成功! http://localhost:8080/HeadFirstStruts2Chap08/fileupload.jsp submit http://localhost:8080/HeadFirstStruts2Chap08/upload 文件上传成功!
3. 多文件上传
FilesUploadAction.java package com.andrew.action; import java.io.File; import org.apache.commons.io.FileUtils; import com.opensymphony.xwork2.ActionSupport; public class FilesUploadAction extends ActionSupport { private File[] files; // 文件 private String[] filesFileName; // 文件名 private String[] filesContentType; // 文件类型 public File[] getFiles() { return files; } public void setFiles(File[] files) { this.files = files; } public String[] getFilesFileName() { return filesFileName; } public void setFilesFileName(String[] filesFileName) { this.filesFileName = filesFileName; } public String[] getFilesContentType() { return filesContentType; } public void setFilesContentType(String[] filesContentType) { this.filesContentType = filesContentType; } @Override public String execute() throws Exception { for (int i = 0; i < files.length; i++) { System.out.println("文件名:" + filesFileName[i]); System.out.println("文件类型:" + filesContentType[i]); String filePath = "E:/" + filesFileName[i]; File saveFile = new File(filePath); FileUtils.copyFile(files[i], saveFile); } return SUCCESS; } } struts.xml <constant name="struts.multipart.maxSize" value="20000000"></constant> <package name="manager" extends="struts-default"> <action name="uploads" class="com.andrew.action.FilesUploadAction"> <result name="success">/success.jsp</result> <result name="input">/filesupload.jsp</result> </action> </package> filesupload.jsp <%@taglib prefix="s" uri="/struts-tags" %> <s:fielderror></s:fielderror> <form action="uploads" method="post" enctype="multipart/form-data"> 文件1:<input type="file" name="files"/><br/> 文件2:<input type="file" name="files"/><br/> 文件3:<input type="file" name="files"/><br/> <input type="submit" value="提交"/> </form> success.jsp 文件上传成功! http://localhost:8080/HeadFirstStruts2Chap08/filesupload.jsp submit http://localhost:8080/HeadFirstStruts2Chap08/uploads 文件上传成功!
4. struts2文件下载
返回的是文件流 <paramname="contentDisposition">attachment;filename=${fileName}</param> InputStreamgetInputStream()
FileDownloadAction.java package com.andrew.action; import java.io.File; import java.io.FileInputStream; import java.io.InputStream; import com.opensymphony.xwork2.ActionSupport; public class FileDownloadAction extends ActionSupport { private String fileName; public String getFileName() throws Exception { fileName = new String(fileName.getBytes(), "ISO8859-1"); return fileName; } public void setFileName(String fileName) { this.fileName = fileName; } public InputStream getInputStream() throws Exception { File file = new File("E:/1.jpg"); this.fileName = "美女1号.jpg"; return new FileInputStream(file); } } struts.xml <package name="manager" extends="struts-default"> <action name="download" class="com.andrew.action.FileDownloadAction"> <result type="stream"> <param name="contentDisposition">attachment;filename=${fileName}</param> </result> </action> </package> http://localhost:8080/HeadFirstStruts2Chap08/filedownload.jsp 文件下载
发表评论
-
struts2防重复提交
2019-01-14 08:55 3541. struts2防重复提交 Student.java ... -
struts2验证框架
2019-01-12 16:10 4141. struts2验证框架 Struts2基于Stru ... -
struts2国际化
2019-01-12 16:10 3961. struts2国际化 网上转码: http://too ... -
struts2标签
2019-01-12 16:10 4471. struts2标签 Struts2自己封装 ... -
struts2值栈与OGNL
2019-01-12 16:10 4531. struts2值栈简介 值栈是对应每个请求对象的一 ... -
struts2拦截器
2019-01-11 09:07 3481. struts2拦截器简介 拦截器简介 Strut ... -
struts2配置result
2019-01-11 09:07 4371. struts2配置result 新建项目HeadF ... -
struts2分模块与action生命周期
2019-01-11 09:07 3521. 分模块 struts.xml <inclu ... -
struts2使用通配符与动态方法调用
2019-01-11 09:06 3881. 使用通配符 新建项目HeadFirstStruts ... -
struts2配置struts.xml
2019-01-11 09:06 3881. struts2配置struts.xml 1 ... -
struts2处理传入多个值
2019-01-10 09:17 3981. struts2处理传入多个值 新建项目HeadFi ... -
struts2属性驱动与模型驱动
2019-01-10 09:17 3831. struts2属性驱动与模型驱动 user.jav ... -
struts2引入ActionSupport
2019-01-10 09:16 4201. struts2引入ActionSupport He ... -
struts2自动获取设置数据
2019-01-10 09:16 3991. struts2自动获取设置数据 新建项目HeadF ... -
struts2简介
2019-01-10 09:16 4631. struts2简介 官网:http://struts. ... -
Java struts2 Jar包
2018-09-03 19:17 6691. Java struts2 Jar包下载地址 http: ...
相关推荐
总的来说,Struts2的文件上传和下载功能通过集成Apache Commons FileUpload库,大大简化了开发者的工作,提供了友好的API和配置选项,使得处理文件上传和下载变得轻而易举。开发者只需要关注业务逻辑,无需过多关注...
在Struts2中,文件上传和下载是常见的功能需求,特别是在处理用户交互和数据交换时。这篇博客文章提供的"struts2文件上传下载源代码"旨在帮助开发者理解和实现这些功能。 文件上传功能允许用户从他们的设备上传文件...
在Struts2中,文件上传和下载是常见的功能,对于用户交互和数据交换至关重要。以下是对这一主题的详细阐述。 1. **文件上传** - **MultipartResolver**: 在处理文件上传时,Struts2首先需要一个MultipartResolver...
这个“Struts2 文件上传和下载示例程序”是一个演示如何在Struts2中实现这两个功能的实例。 文件上传是Web应用程序中的一项重要功能,允许用户从本地计算机选择文件并将其传输到服务器。在Struts2中,这一过程涉及...
### Struts2文件上传与下载教程 #### 一、文件上传原理及实现 **1.1 基础概念** 文件上传是Web开发中的常见需求之一。在Struts2框架中,实现文件上传主要依赖于表单的`enctype`属性设置为`multipart/form-data`。...
Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括文件上传和下载。在Struts2中处理文件上传和下载是常见的需求,对于构建交互式的Web应用来说至关重要。以下将详细介绍Struts2中如何实现这两个...
在实际项目中,文件上传和下载功能是必不可少的,本实例将详细讲解如何在Struts2框架下实现单个文件及多个文件的上传与下载。 首先,我们需要在Struts2的配置文件(struts.xml)中添加相关的Action配置,以便处理文件...
Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java ...以上就是使用Struts2框架实现文件上传下载的基本步骤和关键知识点。在实际开发中,可以根据项目需求进行调整和优化,确保功能的稳定性和安全性。
Struts2 文件上传和下载是Web开发中常见的情景,主要涉及到HTML表单、HTTP请求、文件处理以及服务器端的响应。以下将详细介绍Struts2框架下如何进行文件的上传和下载。 首先,理解文件上传的基本原理至关重要。当在...
Struts2是一个流行的Java web框架,它为开发者提供了一种优雅的方式来构建动态、结构化的Web...希望本文能为你提供关于Struts2文件上传和下载的基本指导,进一步学习可参考给定的博文链接或其他相关文档和示例代码。
在Struts2中,文件上传和下载是常见的功能需求,主要用于处理用户在Web表单中提交的文件,如图片、文档等。下面将详细介绍Struts2中文件上传和下载的实现方法。 ### 1. 文件上传 #### 1.1 配置Struts2 首先,我们...
在这个特定的项目中,我们关注的是"struts2文件上传下载"的功能,这涉及到用户通过Web界面上传文件到服务器,以及从服务器下载文件到用户的设备。 文件上传是Web应用中的常见需求,例如用户可能需要提交图片、文档...
Struts2是一个强大的Java web框架,它为开发者提供了丰富的功能,包括处理用户表单提交、进行文件上传和下载。在Web应用中,文件上传和下载是常见的需求,例如用户上传头像、下载文档等。Struts2通过其Action类和...
例如,Struts 1和Struts 2在处理文件上传和下载的方式上有显著区别,Struts 2引入了更多面向Action的API和拦截器机制。 5. **源代码分析** 在提供的压缩包文件`upload`中,可能包含了Action类、Struts配置文件、...
这个压缩包包含了实现Struts2文件上传所需的全部jar包,这些库文件对于理解和实现文件上传功能至关重要。 首先,我们要了解Struts2文件上传的基本流程。当用户通过表单提交包含文件输入字段的请求时,Struts2框架会...
综上所述,Struts2文件上传下载和表单重复提交涉及多个技术点,包括Struts2的配置、文件操作、HTTP响应头设置、安全性和异常处理。理解并熟练掌握这些知识点,对于构建健壮的Web应用程序至关重要。