写了3个不同方式的文件上传,但是前台用的都是ajax的方式,采用的是jq的uploadify插件,关于这个插件的一些属性就不在这说了,可以去网上查询。附件里是struts2和jspServlet的2个demo工程,springMVC的demo不小心被我删了,所以这里只说下思路,使用非常方便。
springMVC方式上传:
页面和其他两种方式一样,不需要改动,主要是后台action,增加参数MultipartFile uploadify(spring会自动帮我们封装);
例如:action处理中的上传处理方法为
@RequestMapping(method = RequestMethod.POST, params = "action=upload")
public String doPost(ModelMap model, MultipartFile uploadify,BindingResult result) {
//上传文件名,要考虑编码问题,ajax默认上传UTF-8
String fileName = file.getOriginalFilename();
//有了文件流和文件名,接下来怎么做就不多说了
//。。。
}
这里有必要提一下的是,传参的问题,如果是动态传参,简单的说就是页面你填写的信息,要和文件一起上传,就是动态传参:
例如:
一般上传的onclick方法:
jQuery('#uploadify').uploadifyUpload();
动态传参的onclick方法:
$('#uploadify').uploadifySettings('scriptData',{'bizType':$('#bizType').val(),'providerCode':$('#providerCode').val(),'subProviderCode':$('#subProviderCode').val(),'budgetInst':$('#budgetInst').val(),'memo':$('#memo').val()});jQuery('#uploadify').uploadifyUpload()
简单的说,就是用uploadifySettings函数在提交之前注入了参数。
总的来说,这个功能很绚丽,如果前台显示不出来,除了是路径问题外,还有可能是flash没装,版本至少flash9吧
分享到:
相关推荐
jsp/servlet--->oracle数据库--->项目讲解--->Mybatis框架---->spring框架---->springmvc框架--->ssm三大框架整合--->maven--->SVN/GIT--->hibernate框架--->struts2框架--->linux...
5. **拦截器机制**:Struts2有自己独特的拦截器(Interceptor)机制,而SpringMVC采用AOP(面向切面编程)的方式实现拦截功能。 #### 五、SpringMVC的优势 - **灵活性**:SpringMVC允许开发者自由选择视图技术,如...
- **上传与下载**:支持文件上传和下载功能。 - **JSON支持**:能够与JSON格式的数据进行交互,适合于Ajax和移动应用。 **5. MVC的优点** - **复用性**:模型可以被多个视图重用,减少代码冗余。 - **解耦合**:...
根据给定的文件信息,以下是对Struts2框架及其相关技术知识点的详细解析: ### Struts2框架概览 Struts2是Apache基金会下的一个开源Web应用框架,它继承了Struts1的优点,并在此基础上进行了大量的改进和扩展,...
1. **配置文件**:Spring的配置文件(如`applicationContext.xml`)用于定义bean和依赖注入,Spring MVC的配置文件(如`servlet-context.xml`)用于设置URL映射和视图解析器。 2. **Java类**:包括控制器...
jsp/servlet--->oracle数据库--->项目讲解--->Mybatis框架---->spring框架---->springmvc框架--->ssm三大框架整合--->maven--->SVN/GIT--->hibernate框架--->struts2框架--->linux...
- Servlet与JSP概述。 - MVC设计模式讲解。 - EL表达式与JSTL标签库。 - **JavaWEB项目实战(图书商城)** - 项目需求分析与设计。 - 前后端分离架构实现。 - 数据持久层技术选用。 **3. JavaEE阶段** - **...
- **Servlet/JSP/EL/JSTL/AJAX** - Servlet的工作原理 - JSP页面生命周期 - EL表达式语言 - JSTL标签库使用 - AJAX异步请求与响应 #### 六、框架技术 - **Struts2/Hibernate/Spring** - Struts2的工作流程 -...
2. **配置Tiles2**:在Spring的配置文件(如`dispatcher-servlet.xml`)中,我们需要声明Tiles2的视图解析器。这包括设置`TilesViewResolver`类和相应的属性,例如视图前缀和后缀。 3. **定义Tiles配置**:创建一个...
- 熟练掌握 Struts 2 框架及其高级特性,包括拦截器、结果集、值栈、OGNL、表单验证以及 Struts2+AJAX 等技术。 - 熟悉 Struts 2 工作流程。 5. Hibernate 框架: - 熟练掌握 Hibernate 框架,包括一对多及多对...
##### SpringMVC、struts1和struts2区别 - **SpringMVC**:轻量级框架,与Spring无缝集成。 - **Struts1**:较早的MVC框架,使用ActionForm。 - **Struts2**:基于拦截器的设计模式。 ##### Struts2中result中的...
SSH框架指的是Struts2、Spring和Hibernate这三个框架的组合。同样适用于构建JavaWeb应用。 #### 关键知识点: - **Struts2**:一个基于MVC设计模式的Web框架,专注于前端的展示和控制逻辑。 - **Spring**:与SSM...
- 入口点不同:Spring MVC由Servlet控制,Struts2由Filter控制。 - 开发方式:Spring MVC基于方法,每个URL对应一个方法;Struts2基于类,一个类处理多个请求。 - 数据访问方式:Spring MVC使用参数解析器,...
**MyEclipse** 是一个集成开发环境(IDE),特别是针对Java EE开发,它在Eclipse的基础上扩展了更多功能,如对JSP、Servlet、Struts、Spring等的支持,使得Web应用开发更为便捷。 **Tomcat** 是Apache软件基金会的...
- 适配器模式的两种实现方式? #### 6. Linux - **知识点概述**: - Linux系统的基本命令。 - 进程管理、文件权限控制等。 - Shell脚本编写基础。 - **常见面试题**: - 如何查看当前系统运行时间? - 如何...
- **配置方式**:SpringMVC倾向于使用注解配置,而Struts2主要依赖XML配置文件。 ##### 3.2 SpringMVC怎么样设定重定向和转发的? - **重定向**:在控制器方法中返回一个字符串"redirect:/url"。 - **转发**:返回...
2. **框架技能**:熟练掌握SpringMVC、Spring、MyBatis、Struts2、Hibernate等主流Java Web框架。 3. **数据库技术**:精通标准SQL语句,能够使用Oracle、MySQL、SQL Server等多种数据库,并了解NoSQL数据库MongoDB...