上传:
第一步:在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 多文件上传例子,两个方法和思路,适合初学者学习。
php大文件上传例子,包括实现的步骤及详细说明
自己写的一个文件上传的小例子,可以直接导入到MyEclipse中查看效果。文件上传到工程的发布目录下的 upload文件夹中。
uploadify多文件上传例子代码,jsp+servlet实现
多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...
文件上传例子文件上传例子文件上传例子文件上传例子java版本
struts2多文件上传例子及单文件上传例子
PHP 文件上传 例子,效果不错 含jquery
ftp文件上传例子
一个domino附件文件上传例子,包含nsf数据
java 写的文件上传下载的例子,可以做简单图片文件服务器
基于swf 多文件上传例子 可以直接运行
struts2文件上传例子(支持大文件)
NULL 博文链接:https://lihong11.iteye.com/blog/1832454
jsp多文件上传例子jar包都包含,采用jsmartcom_zh_CN.jar组件上传,支持多文件上传,可以拿来借鉴使用。
改demo实现,多个文件一起上传,只要输入“文件夹”目录,就可以把整个文件夹地下的所有文件上传
flex 文件上传 例子 源码 里面有两文件,一个是前台上传,另一个是后台java端处理
jsp技术SmartUpload文件上传例子
Struts2.0实现文件上传例子
SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统标签的文件上传模式。 * 可以同时上传多个文件; * 类似AJAX的无...