Action中还有两个属性:uploadFileName和uploadContentType,这两个属性分别用于封装上传文件的文件名、文件类型。这是Struts2设计的独到之处:Strut2的Action类直接通过File类型属性直接封装了上传文件的文件内容,但这个File属性无法获取上传文件的文件名和文件类型,所以Struts2就直接将文件域中包含的上传文件名和文件类型的信息封装到uploadFileName和 uploadContentType属性中,也就是说Struts2针对表单中名为xxx的文件域,在对应的Action类中使用3个属性来封装该文件域信息:
l 类型为File的xxx属性:用来封装页面文件域对应的文件内容。
l 类型为String的xxxFileName属性:用来封装该文件域对应的文件的文件名。
l 类型为String的xxxContentType属性:用来封装该文件域应用的文件的文件类型。
以下是实际java代码:
jsp页面:
<input type="file" id="upload" name="upload"/>  这个name就是与Action的属性对应
Action类代码:
private File upload;
private String uploadFileName;
private String uploadContentType;
public void setUpload(File upload) {
this.upload = upload;
}
public void setUploadFileName(String uploadFileName) {
this.uploadFileName = uploadFileName;
}
public void setUploadContentType(String uploadContentType) {
this.uploadContentType = uploadContentType;
}
设置3个属性。分别给set方法. 这样子,就能够获取上传的文件,文件名,文件类型。
注意:这个uploadFileName,uploadContentType。如果File 属性名xxx(private File xxx;) 。那这个必须是xxxFileName, xxxContentType。然后也是分别给set 方法就可以。
特别注意:,<s:file/>标志不仅仅是绑定到upload,还有uploadContentType(上传文件的MIME类型)和uploadFileName(上传文件的文件名,该文件名不包括文件的路径)。因此,<s:file name="xxx" />对应Action类里面的xxx、xxxContentType和xxxFileName三个属性。

struts文件上传,获取文件名和文件类型相关推荐

  1. 00截断上传绕过_【文件上传与解析】文件上传与解析漏洞总结v1.0

    点击上方"公众号" 可以订阅哦! Hello,各位小伙伴晚上好~ 这里是依旧勤劳写公众号的小编~ 今天本公众号将推出一个新的模块,那就是漏洞知识点总结模块!!!(此处应有掌声~) ...

  2. SSM框架使用Layui文件上传插件实现多文件上传(多文件列表)

    SSM框架使用Layui文件上传插件实现多文件上传(多文件列表) pom.xml文件的配置 想要实现SSM框架实现多文件上传,必要的jar包必须要在pom.xml文件中引入.如下: <!--co ...

  3. hadoop HDFS的文件夹创建、文件上传、文件下载、文件夹删除,文件更名、文件详细信息、文件类型判断(文件夹或者文件)

    摘要: 本篇文章主要介绍的是hadoop hdfs的基础api的使用.包括Windows端依赖配置,Maven依赖配置.最后就是进行实际的操作,包括:获取远程hadoop hdfs连接,并对其进行的一 ...

  4. 使用Apache文件上传控件实现文件上传

    本文使用Apache提供的第三方文件上传控件进行文件上传 1.导入第三方commons-fileupload-1.3.2.jar和commons-io-2.5.jar包 2.页面form标签需添加en ...

  5. 【文件上传漏洞-01】文件上传漏洞概述、防御以及WebShell基础知识补充

    目录 1 文件上传漏洞概述 2 文件上传漏洞防御.绕过.利用 2.1 黑白名单策略 3 WebShell基础知识补充 3.1 WebShell概述 3.2 大马与小马 1 文件上传漏洞概述 概述:文件 ...

  6. jquery文件上传插件 uploadify java_jQuery文件上传插件Uploadify使用指南

    对于HTML5版本会比较好的支持手机浏览器,避免苹果手机Safari浏览器不支持 Flash,主要特性:支持多文件上传.HTML5版本可拖拽上传.实时上传进度条显示.强大的参数 定制功能,如文件大小. ...

  7. php 拖动多个文件上传,dropzone拖拽文件上传一次上传多个文件的方法

    用dropzone插件拖拽文件上传默认情况是把一个文件拖到浏览器后就立即自动上传,参考前文<用dropzone插件拖拽文件上传>,如果需要一次上传多个文件怎么办?本文将介绍其实现方法. d ...

  8. php 上传文件后缀名,对应PHP文件上传后缀名与文件类型

    Internet上有许多PHP文件上传的处理方法,其实学习PHP的人都知道如何上传文件,但许多人可能会忽略编程中的一些细节,今天爱站技术频道小编为大家介绍对应PHP文件上传后缀名与文件类型. ie 火 ...

  9. 基于OkHttp 、Retrofit 、Volley 、RxJava、Novate多种网络框架整合的快速项目开发框架,一行代码实现Ftp文件上传、文件下载、文件删除和进度监听的工具类的使用

    基于OkHttp .Retrofit .Volley .RxJava.Novate多种网络框架整合的快速项目开发框架,Ftp文件上传.文件下载的工具类的使用. 依赖于Ftp的jar包,对上传.下载.删 ...

  10. php定义上传文件格式,对应PHP文件上传后缀名与文件类型

    Internet上有许多PHP文件上传的处理方法,其实学习PHP的人都知道如何上传文件,但许多人可能会忽略编程中的一些细节,今天爱站技术频道小编为大家介绍对应PHP文件上传后缀名与文件类型. ie 火 ...

最新文章

  1. 单摄像头+深度学习实现伪激光雷达,代码已开源
  2. micropython串口通信_MicroPython-ESP32串口通信-1Z实验室
  3. C 语言编程 — 基本数据类型
  4. Office 2010 系统要求
  5. Codeforces Beta Round #1
  6. Hibernate杂问
  7. Windows 下使用ftp批处理脚本
  8. Linux命令之sed使用入门概述
  9. oracle临时表经常被锁_这是一篇长篇入门级数据库讲解:oracle数据库数据导入导出步骤
  10. C++ 整型长度的获取 不同的系统
  11. git The requested URL returned error: 403
  12. 从Slice_Header学习H.264(三.1)--相关细节之 POC的计算
  13. DOS的net命令详解
  14. [生活日记]参与unity非游戏行业开发者大会小结
  15. 达梦DISQL执行脚本方法总结
  16. 浅谈产品原型制作与设计方法
  17. zabbix_agentd_window端运行报错cannot connect to Service Manager: [0x00000005]
  18. 方波与sinc函数之间的最全傅里叶变换关系_助记_有图有推导
  19. 诸葛新增快应用SDK,满足客户更多数据采集方案支持!
  20. nodejs无法下载puppeteer附带的chromium解决方案

热门文章

  1. [测试]将TestCase整合
  2. jQuery之选项卡的实现
  3. 黑客演示通过空中电视信号DVB-T攻击智能电视机
  4. 微软或允许 Android 应用运行于 Windows 和 WP
  5. 关于Animator获取当前剪辑长度
  6. 给Xshell设置舒适的配色方案
  7. centos c++ 找不到头文件mysql.h
  8. 固态存储作缓存 提升性能有绝招
  9. ASP.NET3种验证码[转]
  10. OpenCV 掩膜的应用