`
jzkangta
  • 浏览: 160495 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

传智Struts2笔记(10)文件上传

阅读更多
文件上传


第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。这两个文件可以从http://commons.apache.org/下载。
第二步:把form表的enctype设置为:“multipart/form-data“,如下:
<form enctype="multipart/form-data" action="${pageContext.request.contextPath}/xxx.action" method="post">
  <input  type="file" name="uploadImage">
</form>
第三步:在Action类中添加以下属性,属性红色部分对应于表单中文件字段的名称:
public class HelloWorldAction{
  private File uploadImage;//得到上传的文件
  private String uploadImageContentType;//得到文件的类型
  private String uploadImageFileName;//得到文件的名称
  //这里略省了属性的getter/setter方法
  public String upload() throws Exception{
	String realpath = ServletActionContext.getServletContext().getRealPath("/images");
	File file = new File(realpath);
	if(!file.exists()) file.mkdirs();
	FileUtils.copyFile(uploadImage, new File(file, uploadImageFileName));
	return "success";
  }
}



多文件上传



第一步:在WEB-INF/lib下加入commons-fileupload-1.2.1.jar、commons-io-1.3.2.jar。这两个文件可以从http://commons.apache.org/下载。
第二步:把form表的enctype设置为:“multipart/form-data“,如下:
<form enctype="multipart/form-data" action="${pageContext.request.contextPath}/xxx.action" method="post">
  <input  type="file" name="uploadImages">
  <input  type="file" name="uploadImages">
</form>
第三步:在Action类中添加以下属性,属性红色部分对应于表单中文件字段的名称:
public class HelloWorldAction{
  private File[] uploadImages;//得到上传的文件
  private String[] uploadImagesContentType;//得到文件的类型
  private String[] uploadImagesFileName;//得到文件的名称
  //这里略省了属性的getter/setter方法
  public String upload() throws Exception{
	String realpath = ServletActionContext.getServletContext().getRealPath("/images");
	File file = new File(realpath);
	if(!file.exists()) file.mkdirs();
	for(int i=0 ;i<uploadImages.length; i++){ File uploadImage = uploadImages[i];
    FileUtils.copyFile(uploadImage, new File(file, uploadImagesFileName[i]));
}
	return "success";
  }}

分享到:
评论

相关推荐

    传智播客struts2全程学习笔记

    ### 传智播客Struts2全程学习笔记 #### Struts2的优点 1. **无侵入式设计**:与Struts1相比,Struts2的设计更为先进,它不依赖于Servlet API或Struts API,这使得Struts2更加灵活且易于集成到其他环境中。在代码...

    黑马程序员Struts2笔记

    黑马程序员的笔记中可能包含了如何创建一个简单的Struts2应用,从HelloWorld实例到实际的表单提交、文件上传下载等实战案例,帮助初学者快速掌握Struts2的基本用法。 通过学习这些笔记,开发者将能够理解Struts2的...

    传智struts从入门到精通视频+笔记+上课代码

    9. **Struts 2**:虽然资源名为"传智struts从入门到精通",但通常会涉及到Struts 1和Struts 2的对比,Struts 2在很多方面进行了改进,如使用更现代的OGNL表达式语言,提供更灵活的拦截器机制等。 10. **最佳实践**...

    自学传智博客struts2-黎活明-源码-第01讲_01介绍struts2及struts2开发环境的搭建_DemoStruts2.rar

    自学传智博客struts2-黎活明-源码-第01讲_01介绍struts2及struts2开发环境的搭建_DemoStruts2.rar; 笔记地址:http://www.guloulou.com/?p=1253

    传智播客Struts2学习资料

    10. **Struts2与Spring集成**:整合Struts2和Spring框架,实现依赖注入,提高代码的可测试性和可维护性。 代码示例部分通常会包含以下几个方面的实践: 1. **Hello World示例**:最基本的Struts2应用,展示如何...

    传智博客黎活明 struts2

    传智博客__黎活明-struts2.ppt ,供学习配套视频

    传智播客最新Struts2PPT.ppt

    这是关于struts框架的笔记,是传智播客讲师编写的,................................................。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。...

    传智播客 struts课程笔记 赖家材

    3. **Struts 插件使用**:Struts 支持多种插件,用于增强其功能,如分页、文件上传等。 4. **DispatchAction**: - **DispatchAction**:一种特殊的 Action 类型,可以根据不同的方法名调用不同的处理逻辑。 - **...

    传智播客struts2框架2016版视频教程笔记

    ### 传智播客Struts2框架2016版视频教程笔记 #### 概述 Struts2是一个用于构建企业级Java Web应用程序的开源框架。它基于MVC设计模式,能够帮助开发者更加高效地组织代码结构,并提供了一系列实用的功能,如拦截器...

    赖家材Struts 传智播客笔记下载

    ### 赖家材Struts 传智播客笔记知识点概览 #### 一、Struts 入门 ##### 1. Struts 入门简介 - **为什么使用 Struts**: - 建立在 MVC(Model-View-Controller)模式的基础上,Struts 主要在控制器(Controller)...

    传智168期JavaEE struts2杜宏 day 29~day31笔记.pdf

    标题中的“传智168期JavaEE struts2杜宏 day 29~day31笔记”暗示了文档是一系列关于JavaEE技术栈中的Struts2框架的课程笔记,由杜宏教授,并且特别强调了是从29天到31天的学习内容。JavaEE(Java Platform, ...

    传智的javaweb学习笔记,比较全的

    8. **文件上传和下载**:在Web应用中,文件操作是常见需求,笔记会涵盖Servlet如何处理文件上传和下载。 9. **Tomcat服务器**:作为常用的JavaWeb服务器,Tomcat的配置和管理也是学习的一部分,笔记可能会涉及部署...

    自学传智博客struts2-黎活明-源码-第02讲_02第一个struts2应用开发_DemoStruts2.rar

    本资源“自学传智博客struts2-黎活明-源码-第02讲_02第一个struts2应用开发_DemoStruts2.rar”提供了黎活明老师在传智博客上讲解的第一个Struts2应用的开发示例,帮助初学者理解并实践Struts2的核心概念和使用方法。...

    传智播客2016版hibernate+struts2+Spring框架资料课件+笔记

    《传智播客2016版hibernate+struts2+Spring框架学习资源详解》 在IT行业中,框架的使用是开发高效、稳定应用的关键。本资源包聚焦于三大主流Java Web框架:Hibernate、Struts2和Spring,它们在2016年时仍然是开发者...

    传智播客 hibernate笔记(word+pdf+源码)

    总的来说,这份【传智播客 Hibernate 笔记】是学习 Hibernate 及其在 SSH(Spring、Struts、Hibernate)框架中的应用的宝贵资源,涵盖了从基础到高级的各个方面,无论你是初学者还是有经验的开发者,都能从中受益。...

    传智168期JavaEE struts2杜宏 day32~day33笔记

    ### 传智168期JavaEE Struts2杜宏 Day32~Day33 笔记 #### OGNL介绍与简单使用 ##### OGNL概述 OGNL(Object Graphic Navigation Language)即对象图导航语言,是Struts2框架中使用的默认表达式语言。作为一种强大...

    struts2框架2016版资料day01

    3. **配置文件**:在day01的学习中,你可能会接触到如何编写struts.xml文件,它是Struts2的主配置文件,用于配置Action、Action的输入输出结果、包(package)等。配置文件中的元素和属性将决定框架如何处理请求和...

    Struts1.x笔记

    这是我看完传智播客Struts1视屏后对Struts1进行的总结,每次复习都是看这个,自认为还不错,希望对你有所帮助,如果您觉得还行的话,记得给好评哦!

Global site tag (gtag.js) - Google Analytics