主要导入包:
struts2 2.3.4.1版本相关包
其他
处理接收文件Action类FileUploadAction
package com.dahuazwan.ihwsm.demo;
import java.io.File;
import com.opensymphony.xwork2.ActionSupport;
@SuppressWarnings("serial")
public class FileUploadAction extends ActionSupport {
private File image; //上传的文件
private String imageFileName; //文件名称
private String imageContentType; //文件类型
private String newName; //新名称
public String execute() throws Exception {
System.out.println(image);
System.out.println(imageFileName);
System.out.println(imageContentType);
System.out.println(newName);
return SUCCESS;
}
// set/get方法略
}
struts配置文件struts.xml:
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="false" />
<!-- 解决Post乱码 -->
<constant name="struts.i18n.encoding" value="UTF-8" />
<constant name="struts.custom.i18n.resources" value="struts"/>
<!-- 指定允许上传的文件最大字节数。默认值是2097152(2M) -->
<constant name="struts.multipart.maxSize" value="20971520"/>
<!-- 设置上传文件的临时文件夹,默认使用javax.servlet.context.tempdir -->
<constant name="struts.multipart.saveDir " value="/" />
<package name="struts3" extends="struts-default,json-default" namespace="/">
<action name="fileupload" class="com.dahuazwan.ihwsm.demo.FileUploadAction" method="execute">
<result name="success">/index.jsp</result>
</action>
</package>
</struts>
上传jsp页面内容:
<form action="fileupload" method="post" enctype="multipart/form-data"><!-- 表单文件上传遵循的格式 -->
<input type="text" name="newName" />
<input type="file" name="image"><br>
<input type="submit" value="submit">
</form>
注意点:
- form表单的method为post,且enctype为multipart/form-data
-
FileUploadAction的3个属性遵守以下规则:File {1}、String {1}FileName、String {1}ContentType,
其中{1}必须和表单中file同名。如这里是image,则对应属性为image、imageFileName、imageContentType
-
FileUploadAction还需要接收表单其他属性名称,则其名称必须和表单对应名称相等,如这里的newName
分享到:
相关推荐
该漏洞与Apache Struts2 (S2-045)远程代码执行漏洞原理基本相同,均是由于上传功能的异常处理函数没有正确处理用户输入的错误信息,导致远程攻击者可通过发送恶意的数据包,利用该漏洞在受影响服务器上执行任意...
commons-fileupload-1.2.1.jar//文件上传时用的,为了以后用到,最好加入 commons-io-1.3.2.jar//同上 commons-logging-1.0.4.jar freemarker-2.3.16.jar javassist-3.7.ga.jar ognl-3.0.jar struts2-core-2.2.1.1....
第1章 Struts 2概述,第2章 Struts 2下的HelloWorld,第3章 Struts 2基础,第4章 深入Struts 2,第5章 Struts 2的类型转换,第6章 文件的上传和下载.,第7章 Struts 2的拦截器,第8章 Struts 2的输入校验,9.2 ...
优化部分EXP在部分情况下被WAF拦截的问题,提高检测成功率,优化自定义上传路径exp,文件所在目录不存在时自动创建目录,防止文件因为目录不存在,导致上传失败。 2018-08-24: 增加S2-057 Struts 2.3 to 2.3.34,...
java struts2入门学习实例--使用struts2快速实现多个文件上传
struts2-文件上传
K8_Struts2_EXP S2-045 & 任意文件上传 20170310,无密码,2017版,最新版
修复S2-045:Struts 2远程执行代码漏洞,时用到的jar,漏洞影响:基于Jakarta Multipart解析器执行文件上传时可能的RCE 影响版本:Struts 2.3.5 - Struts 2.3.31 Struts 2.5 - Struts 2.5.10
本书内容非常全面,涵盖了众多书籍所有知识要点,并结合作者自己经验总结而编写,内容相当丰富,是查找技术的好帮手及学习Struts2的不二选择 众所周知,一般书籍为了销售需要,往往很少的知识点,却需要添加大量的...
NULL 博文链接:https://zhenjw.iteye.com/blog/312108
struts2上传文件需要的jar包 commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar
struts2-core-2.x.x.jar : Struts2 框架的核心类库 b. xwork-core-2.x.x.jar: XWork类库,Struts2在其上构建 c. ognl-2.6.x.jar: 对象图导航语言(Object Graph Navigation Language),Struts2框架通过其读写对象的...
在struts2基础上实现的包括单文件、多文件的上传及下载
struts2中实现文件上传 struts2中实现CRUD struts2中的OGNL struts2的新表单标志的使用 struts2与AJAX一 struts2与AJAX二 struts2与AJAX三 struts2中用Spring实现IOC struts2中的零配置与IOC struts2介绍之使用连接...
这是我结合网络资源。。和我对一些平时知识积累做的一个文件上传。。可能还存在漏洞。。请爱学者补全。。它将是一个完美的文件上传资料。。希望能给你的学习带来方便
可以解决struts2-S2-045远程代码执行漏洞 漏洞编号 CVE-2017-5638 如果用户使用基于Jakarta的多分片文件上传解析器,强烈建议用户立即升级到Apache Struts 2.3.32 或 2.5.10.1 版本。
struts2文件上传struts2文件上传struts2文件上传struts2文件上传struts2文件上传struts2文件上传struts2文件上传struts2文件上传
这是struts2中文件上传的必须组件,
Struts 2权威指南--基于WebWork核心的MVC开发.pdf 12卷,最后要下载我上传的 "海啸文件分割器V1.0.rar"或自行去网站下载进行12卷的合并..谢谢
本版本支持elasticsearch java语言远程命令执行及文件上传elasticsearchgroov语言远程命令执行及文件上传struts2-005,struts2-009,struts2-013,struts2-016,struts2-019,struts2-020,struts2-devmode,struts2...