struct2中uploadFileName的问题

之前做了一个项目,里面的有一个上传文件的:

<input type="file" name="upload" accept="${docAcceptType}" />

在后台action有相关参数:

private File upload;//上传的文件内容

private String uploadFileName;//上传的文件名

然而jsp界面上并没有uploadFileName的参数名,好奇这个值是怎么传进来了

测试后发现,这个是struct的封装的,命名上应该是:name+FileName的

比如有多个:

<input type="file" name="upload1" accept="${docAcceptType}" />

<input type="file" name="upload2" accept="${docAcceptType}" />

那么后台应该是:

private File upload1;//上传的文件内容

private String upload1FileName;//上传的文件名

private File upload2;//上传的文件内容

private String upload2FileName;//上传的文件名

并且设置setter/getter方法,就可以在后台获取相关的参数值

时间: 2024-10-24 18:31:21

struct2中uploadFileName的问题的相关文章

手动搭建struct2中碰到的一点问题

手动搭建struct2的时候,总是会碰到找不到Filter的问题,到底是怎么回事呢? 其实,关键就在于导入的五个jar包,我们最好是将它放在web-inf目录的lib下,然后再组织导入,这样web.xml才能顺利找到. PS:web.xml就放在web-inf下面就好. 至于struct.xml,目前放在src目录下就好. 自己的技术水平一向让自己无语,碰到这样个问题都得搞半天--  手动搭建struct2中碰到的一点问题

Struct2中自定义的Filter无效

解决办法,把自定义的Filter配置放在struct2前 <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schem

AOP 面向切面编程详解

引言 对类(class)增强的手段通常分为以下三类 1.继承  子类通过继承父类或者实现接口对类进行增强 2.装饰者模式(Wrapper) 常用于对类的某个方法进行重写,以实现更强大的功能.常用于场合缓冲流,Struct2中StructRequestWarpper类   实现准则:是你还有你,一切全靠你 3.动态代理 一句话概括:获取实现了一组接口的类对象 需提供目标对象,增强建议  三大参数 :ClassLoader Class[] interfaces InvocationHandler  

内表、结构赋值转换规则

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4292904.html 内表转换规则... 57 C语言中的结构对齐... 57 ABAP结构体对齐... 58 结构体相互赋值转换规则... 59 MOVE-CORRESPONDING(结构体赋值)... 62 内表转换规则 内表只能被转换

volley学习笔记

前言 这个是第一次写源码分析的文章(仅仅是给自己做个也给自己两天对volley学习的一个交代吧).以前的老大经常强调一种代码阅读能力(如何通过源码的阅读了解框架.流程.及使用注意细节呢)网上查找了很多相关资料,如何培养源码阅读能力,但也是零零闪闪不全面.这可能与源码阅读设计到多方面,经验+知识面宽度等等.(这里不总结,个人修道还不深,求大神带飞),但是个人觉得思路还是一样的,源码阅读也罢新技术学习也罢.重点在于 核心概念+流程+关键点这里写上个人理解. 核心概念:每一个框架都有自己的核心概念(如

[Struts2]访问request,session和application对象(转)

与Servlet API解耦的访问方式 Structs2对HttpServletRequest,HttpSession,和ServletContext进行了封装,构造了三个Map对象来替代这三种对象,在Action中,直接使用HttpServletRequest,Httpsession,ServletContext对应的Map对象来保存和读取数据. 要获取这三个Map对象,可以使用com.opensymphony.xwork2.ActionContext类. ActionContext是acti

Spring Aop、拦截器、过滤器的区别

Filter过滤器:拦截web访问url地址.Interceptor拦截器:拦截以 .action结尾的url,拦截Action的访问.Spring AOP拦截器:只能拦截Spring管理Bean的访问(业务层Service)----------------------------------------------------------------------------Spring AOPSpring AOP,是AOP的一种实现,使用的是代理模式.FilterFilter(过滤器)是J2E

简易内存分配器的实现

一个简易的C++内存管理器实现总体结构如下所示: 该内存分配器的刚开始使用是通过sc_pool_s *sc_create_pool (size_t size)函数创建一个字节大小为size的sc_pool_s对象,该对象由一个链表结构的sc_pool_data_t和一个指向sc_pool_large_s的结构体指针组成,其中sc_pool_data_t用来处理小内存申请的需求,而sc_pool_large_s则用来处理大内存申请的请求,且根据需要动态的扩展,形成一个链表结构. 一些其他内容的说明

struct2的xml文件中result的配置(转)

一个result代表了一个可能的输出.当Action类的方法执行完成时,它返回一个字符串类型的结果码,框架根据这个结果码选择对应的result,向用户输出.在com.opensymphony.xwork2.Action接口中定义了一组标准的结果代码,可供开发人员使用,当然了只有我们的action继承ActionSupport 这个类才可以使用下面的结果代码,如下所示:public interface Action{    public static final String SUCCESS =