上传:
第一步:在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="uploadFile">
</form>
第三步:在Action类中添加以下属性,属性红色部分对应于表单中文件字段的名称:
public class HelloWorldAction{
private File uploadFile;//得到上传的文件
private String uploadFileContentType;//得到文件的类型
private String uploadFileFileName;//得到文件的名称
//这里略省了属性的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(uploadFile, new File(file, uploadFileFileName));
return "success";
}
}
//例子:
//action 代码。
package com.struts2;
import java.io.File;
import com.opensymphony.xwork2.ActionSupport;
public class UpLoadAction extends ActionSupport {
private File photo;
private String photoFileName;
private String photoContentType;
public String execute() throws Exception {
System.out.println(photo);
System.out.println(photoFileName);
System.out.println(photoContentType);
//拷贝上传文件到那个俄路径下。
photo.renameTo(new File("c:\\" + photoFileName));
return "success";
}
public void setPhoto(File photo) {
this.photo = photo;
}
public void setPhotoFileName(String photoFileName) {
this.photoFileName = photoFileName;
}
public void setPhotoContentType(String photoContentType) {
this.photoContentType = photoContentType;
}
}
//配置文件 struts.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="com" namespace="/zdy" extends="struts-default">
<action name="hello" class="com.struts2.HelloWordAction">
<result>/hello.jsp</result>
</action>
<action name="nod">
<result>/hello.jsp</result>
</action>
<action name="add" class="com.struts2.AddAction">
<result name="input">add-input.jsp</result>
<result>add-result.jsp</result>
<result name="cal">\add-result.jsp</result>
</action>
<action name="upLoadAction" class="com.struts2.UpLoadAction"/>
</package>
</struts>
//jsp
<%@ page language="java" contentType="text/html; charset=GB18030"
pageEncoding="GB18030"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>Insert title here</title>
</head>
<body>
<form action="upLoadAction.action" method="post" enctype="multipart/form-data">
name:<input type="text" name="name"/><br/>
file:<input type="file" name="photo"/><br/>
<input type="submit" value="提交"/><br/>
</form>
</body>
</html>
分享到:
相关推荐
在这个"C# .NET FileUpload 多文件上传例子"中,我们将探讨两种主要的方法,帮助你理解和掌握这一关键功能。 首先,我们要知道ASP.NET中的`<asp:FileUpload>`控件是实现文件上传的核心组件。它可以允许用户从本地...
这个例子提供了一个简单的文件上传功能,可以通过集成开发环境MyEclipse进行演示。在这个过程中,用户可以选择本地文件并将其上传到服务器上的指定目录——在这种情况下是工程的发布目录下的`upload`文件夹。 首先...
标题 "jquery文件上传例子(两种方式)" 涉及到的是使用jQuery库进行文件上传的实践,这在Web开发中是非常常见的需求。jQuery是JavaScript的一个轻量级库,它简化了DOM操作、事件处理和Ajax交互等任务。在这个示例中,...
3. `max_execution_time`: 设置脚本最大执行时间,避免因大文件上传导致服务器超时。 确保这些值足够大,以便能处理预期的大文件。例如,可以将它们设置为: ``` post_max_size = 50M upload_max_filesize = 48M ...
这个"多文件上传例子及说明"的压缩包提供了一个示例,教你如何实现一次性上传一个文件夹内的所有文件。以下是对这个主题的详细解释。 首先,我们需要理解多文件上传的原理。在Web开发中,通常使用HTML5的`...
总的来说,uploadify多文件上传例子代码通过结合前端的uploadify插件和后端的servlet处理,实现了在jsp环境下的多文件上传功能。它简化了开发流程,提供了丰富的自定义选项,是Web开发中一个实用的工具。在实际项目...
在本“swf 文件上传例子”中,我们将探讨如何实现一个基于SWF的多文件上传功能,这个功能允许用户在Web应用中一次性上传多个文件。 在Web开发中,文件上传是一项常见需求,它可以让用户上传图片、文档等各种类型的...
在这个"domino文件上传例子"中,我们将深入探讨如何实现一个附件文件上传到NSF(Notes Storage Facility)数据库的解决方案。 **1. NSF数据库基础** NSF是Lotus Domino中用于存储数据的标准格式,类似于关系型...
在“struts2文件上传例子.rar”这个项目中,开发者已经使用Struts2.0框架实现了一个简单的文件上传功能。MyEclipse 6.6是一个集成开发环境,支持Java EE项目开发,可以直接导入该项目进行运行和调试。 首先,我们...
本文将围绕“文件上传例子,upFile”这一主题进行深入探讨,结合提供的标签“upFile”,我们将重点讲解如何实现一个简单的文件上传功能。 首先,文件上传的基本流程包括用户选择文件、前端处理文件、传输文件到...
"实现多个文件上传例子"这个项目提供了一个具体的实现方案,允许用户一次性上传多个文件到服务器。这通常涉及到前端的交互设计和后端的数据处理。下面将详细阐述相关知识点。 一、前端文件上传 1. ...
多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...
标题 "nutz 文件上传例子" 暗示我们即将探讨的是使用 Nutz 框架进行文件上传操作的相关知识。Nutz 是一个轻量级、高性能的 Java 开发框架,它提供了一系列方便实用的工具和组件,其中包括处理文件上传的功能。 在 ...
这个例子展示了如何使用Struts2和Hibernate这两个流行的开源框架来实现文件上传。Struts2是一个强大的MVC(Model-View-Controller)框架,而Hibernate则是一个优秀的对象关系映射(ORM)工具,用于简化数据库操作。 ...
在这个“文件上传例子java版本”中,我们将探讨如何使用Java实现这个功能,主要涉及以下几个关键知识点: 1. **Servlet与HTTP协议**:在Java Web开发中,Servlet是处理HTTP请求的核心组件。当用户通过表单提交文件...
在这个“struts2文件上传例子(支持大文件)”中,我们将探讨如何利用Struts2框架实现文件上传功能,尤其是处理大文件的能力。 在Web应用中,文件上传是一项常见的需求,例如用户可能需要上传照片、文档或视频等。...
在这个"Servlet 文件上传下载例子"中,我们将探讨如何使用Servlet实现文件的上传和下载功能,这对于构建一个简单的图片文件服务器至关重要。 1. **文件上传** - **MultipartRequest**: 在Servlet中,处理文件上传...
在这个"flex 文件上传 例子 源码"中,我们将深入探讨Flex如何实现文件上传以及与Java后端的交互。 首先,前台上传通常涉及到用户界面的设计,使用户能够选择要上传的文件。在Flex中,我们可以使用`FileReference`类...
这个"struts文件上传例子"很可能是展示如何在Struts应用中处理文件上传的一个示例项目。 首先,你需要在JSP页面上创建一个`<input type="file">`元素,让用户选择要上传的文件。然后,将该表单提交到一个对应的...
在这个"struts1.2简单文件上传例子"中,我们将深入探讨Struts1.2框架如何处理文件上传功能。 首先,文件上传在Web应用中是一个常见的需求,例如用户可能需要上传个人头像、文档或者其他类型的数据。在Struts1.2中,...