jsp表单页面(upload.jsp)
<!-- form表单必须是post提交,且要配置enctype="multipart/form-data" -->
<form action="upload.do" method="post" enctype="multipart/form-data">
文件路径:<input type="file" name="file"><br>
<input type="submit" value="提交"><br>
</form>
${msg }
ActionForm
import org.apache.struts.action.ActionForm;
import org.apache.struts.upload.FormFile;
public class UploadForm extends ActionForm {
//注意类型
private FormFile file;
public FormFile getFile() {
return file;
}
public void setFile(FormFile file) {
this.file = file;
}
}
Action
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
UploadForm uf = (UploadForm) form;
FormFile ff = uf.getFile();
System.out.println("源文件名:"+ff.getFileName());
System.out.println("源文件大小:"+ff.getFileSize());
//写到磁盘
FileOutputStream fout = new FileOutputStream(new File("d://"+ff.getFileName()));
fout.write(ff.getFileData());
fout.flush();
fout.close();
//添加页面返回信息
request.setAttribute("msg", "上传成功");
return mapping.findForward("success");
}
xml文件配置
<form-beans>
<form-bean name="uploadForm" type="com.cao.form.UploadForm" />
</form-beans>
<action-mappings>
<action path="/upload"
type="com.cao.action.UpLoadAction"
name="uploadForm"
scope="request">
<forward name="success" path="/upload.jsp" />
</action>
</action-mappings>
<!-- 此标签可以配置上传文件的大小 -->
<controller maxFileSize="3M" />
分享到:
相关推荐
Struts1.x提供了处理多文件上传的功能,使得开发者可以方便地集成到自己的应用程序中。 在Struts1.x中实现多文件上传,主要涉及以下几个核心概念和步骤: 1. **表单设计**:首先,你需要创建一个HTML表单,包含`...
**一、Struts1.x文件上传** 在Struts1.x中,文件上传主要依赖于`org.apache.struts.upload`包中的类。最常用的是`MultipartRequestHandler`,它实现了Servlet API中的`HttpServletRequestWrapper`接口,允许处理...
在Struts1.x中,实现文件上传功能是一个常见的需求,这通常涉及到处理用户通过表单提交的二进制数据,如图片、文档等。本示例将深入探讨如何在Struts1.x中实现文件上传功能。 首先,你需要在Struts的配置文件...
在Struts 1.x中,如果需要在表单中处理文件上传,这个库是必不可少的。 搭建Struts 1.x环境的步骤通常包括以下几点: 1. 将这些jar包添加到你的项目类路径中。 2. 创建`struts-config.xml`配置文件,定义Action、...
在Struts1.x中,实现文件上传功能是一个常见的需求,特别是在处理用户提交的表单时需要包含多个文件。下面我们将详细介绍如何使用Struts1.x来实现多个文件的上传。 首先,我们需要在HTML表单中添加`...
它会涵盖基本的表单提交、文件上传下载、异常处理、国际化、数据校验等多个方面,帮助初学者快速上手。尽管Struts1.x的时代已过去,但其设计理念和模式仍然是现代Web开发的重要基础。通过深入研究,你不仅能提升自己...
以上就是关于Struts2.x文件上传的基本原理和实现步骤,通过理解和实践这些知识点,开发者可以轻松地在自己的应用中实现文件上传功能。记得在实际开发中,还需要结合具体的业务需求和安全策略进行调整和优化。
Struts1.x提供了一套文件上传的机制,包括临时文件的处理、文件大小限制等。 6. **错误和异常处理**: - 如何使用Struts1.x的ActionError和ActionMessages来处理和显示应用程序中的错误信息。 - 异常处理机制,如...
struts1.x上传实例 struts文件上传,struts upload组件文件上传 最基本的实例,将文件上传到应用服务器里 1.upload.jsp内容 <form action="fileup.do" method="post" enctype="multipart/form-data" > 文件:...
这是Struts1.x的核心配置文件,用于定义Action、Form Bean、Forward等。例如: ```xml <struts-config> <!-- 定义Form Bean --> <!-- 全局异常处理 --> <!-- 定义Action --> ...
- `commons-fileupload.jar`:用于实现文件上传功能。 - `commons-logging.jar`:提供日志处理能力。 - `commons-beanutils.jar`:简化了POJO的属性赋值和拷贝操作。 - `commons-validator.jar`:用于表单验证。...
在探讨《Struts+1.x文件的上传和下载》这一主题时,我们主要聚焦于如何在Struts框架下实现文件的上传与下载功能。Struts是Apache开发的一款用于构建企业级Java Web应用的开源框架,它遵循MVC(Model-View-Controller...
Struts1.x是一个经典的MVC框架,用于构建Java Web应用程序。在Web开发中,防止重复提交和跨站请求伪造(CSRF)攻击是常见的安全需求。Token机制是一种有效的防护手段,它通过在表单中添加一个唯一的、随机的令牌值,...
- **S2-045**:此漏洞存在于Jakarta Multipart解析器中,当执行文件上传操作时可能导致远程代码执行。受影响的版本范围为Struts 2.3.5至2.3.31,以及2.5至2.5.10。此漏洞被评估为高风险等级。 - **S2-046**:与S2-...
描述中的“struts2.jar包struts2.1.jar包struts2.1.8.jar包”可能是在强调Struts2的不同版本,其中“struts2.1.jar”可能是对Struts2 2.1.x系列的泛指,而“struts2.1.8.jar”则是具体的版本号。每个版本都有其特性...
- **文件上传**:使用Struts的文件上传功能轻松实现文件上传功能。 5. **使用工具构建 Struts 应用**: - **IDE 集成**:大多数现代IDE都支持Struts插件,如Eclipse的Struts插件可以简化开发过程。 - **构建工具...
6. Commons-fileupload:处理文件上传的库。 如果你的应用需要与第三方框架集成,比如Spring,那么还需要添加相应的-struts2-plugin.jar文件,如struts2-spring-plugin-2.x.x.jar。 配置Struts2应用时,你需要在...
1. **灵活性**:Struts 2的文件上传功能比Struts 1.x更强大,且与整个框架集成度高。而SmartUpload作为独立库,提供了更多自定义选项。 2. **易用性**:对于熟悉Struts的开发者来说,Struts 2的文件上传配置相对简单...