dyl
2014-05-22 23:25:43
原精
Struts2文件上传配置教程Demo代码下载
项目截图:
pom文件:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>zuidaima</groupId> <artifactId>Structs-FileUpLoad</artifactId> <version>0.0.1-SNAPSHOT</version> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>com.sun</groupId> <artifactId>tools</artifactId> <version>1.5.0</version> </dependency> <dependency> <groupId>org.apache.struts</groupId> <artifactId>struts2-core</artifactId> <version>2.3.1.2</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> </dependencies> </project>
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> <constant name="struts.multipart.saveDir" value="c:/upload"></constant> <constant name="struts.action.extension" value="html" /> <constant name="struts.devMode" value="true" /> <constant name="struts.custom.i18n.resources" value="global" /> <package name="default" extends="struts-default"> <action name="index" > <result >/WEB-INF/views/fileupload.jsp</result> </action> <action name="fileUpload" class="com.zuidaima.fileupload.controller.FileUploadAction"> <param name="uploadDir">/WEB-INF/upload</param> <result name="SUCCESS">/WEB-INF/views/success.jsp</result> </action> </package> </struts>
FileUploadAction:
package com.zuidaima.fileupload.controller; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; /** * * @author dyl * */ public class FileUploadAction extends ActionSupport { private static final long serialVersionUID = 1L; private File fileUpload; private String fileUploadContentType; private String fileUploadFileName; private String uploadDir; public String getFileUploadContentType() { return fileUploadContentType; } public void setFileUploadContentType(String fileUploadContentType) { this.fileUploadContentType = fileUploadContentType; } public String getFileUploadFileName() { return fileUploadFileName; } public void setFileUploadFileName(String fileUploadFileName) { this.fileUploadFileName = fileUploadFileName; } public File getFileUpload() { return fileUpload; } public void setFileUpload(File file) { this.fileUpload = file; } public String getUploadDir() { return uploadDir; } public void setUploadDir(String uploadDir) { this.uploadDir = uploadDir; } public String execute() throws Exception { String newFileName = null; long now = System.currentTimeMillis(); // 得到保存上传文件的目录的真实路径 File dir = new File(ServletActionContext.getServletContext() .getRealPath(uploadDir)); // 如果该目录不存在,就创建 if (!dir.exists()) { dir.mkdirs(); } // 为避免重名文件覆盖,判断上传文件是否有扩展名,以时间戳作为新的文件名 int index = fileUpload.getName().lastIndexOf("."); if (index != -1) { newFileName = now + fileUpload.getName().substring(0,index); } else { newFileName = Long.toString(now); } InputStream is = null; OutputStream os = null; try { // 读取保存在临时目录下的上传文件,写入到新的文件中 is = new FileInputStream(fileUpload); os = new FileOutputStream(new File(dir, newFileName)); byte[] buf = new byte[1024]; int len = -1; while ((len = is.read(buf)) != -1) { os.write(buf, 0, len); } //删除临时文件 fileUpload.delete(); } finally { is.close(); os.close(); } return "SUCCESS"; } public String display() { return "NONE"; } }
项目运行截图:
由最代码官方编辑于2016-8-24 10:07:23
猜你喜欢
- struts2多文件上传实例代码
- Struts2实现文件上传功能,并校验上传文件大小
- jsp+struts2开发文件上传实例
- struts2开发文件上传下载的简单实例
- java struts2结合swfupload实现上传文件的demo教程
- Struts2制作的一个上传,实现了ModelDriven接口。
- struts2带进度的多文件上传(支持上传.doc后缀的word文档并在线预览)
- struts2+jquery上传文件包括进度条
- java struts2实现文件批量上传下载功能(实现国际化配置)
- struts2 poi导出excel实例代码下载
- struts2的简单demo实例源代码下载
- Struts2用户登录入门DEMO实例
请下载代码后再发表评论
文件名:FileUpload.zip,文件大小:10.306K
下载
- /
- /FileUpLoad
- /FileUpLoad/.classpath
- /FileUpLoad/.project
- /FileUpLoad/.settings
- /FileUpLoad/.settings/.jsdtscope
- /FileUpLoad/.settings/org.eclipse.jdt.core.prefs
- /FileUpLoad/.settings/org.eclipse.wst.common.component
- /FileUpLoad/.settings/org.eclipse.wst.common.project.facet.core.xml
- /FileUpLoad/.settings/org.eclipse.wst.jsdt.ui.superType.container
- /FileUpLoad/.settings/org.eclipse.wst.jsdt.ui.superType.name
- /FileUpLoad/.settings/org.maven.ide.eclipse.prefs
- /FileUpLoad/WebContent
- /FileUpLoad/WebContent/META-INF
- /FileUpLoad/WebContent/META-INF/MANIFEST.MF
- /FileUpLoad/WebContent/META-INF
- /FileUpLoad/src
- /FileUpLoad/src/main
- /FileUpLoad/src/main/java
- /FileUpLoad/src/main/java/com
- /FileUpLoad/src/main/java/com/zuidaima
- /FileUpLoad/src/main/java/com/zuidaima/fileupload
- /FileUpLoad/src/main/java/com/zuidaima/fileupload/controller
- /FileUpLoad/src/main/java/com/zuidaima/fileupload
- /FileUpLoad/src/main/java/com/zuidaima
- /FileUpLoad/src/main/java/com
- /FileUpLoad/src/main/java
- /FileUpLoad/src/main
- /FileUpLoad
相关代码
最近下载
张青峰 LV10
2020年4月14日
hehehe998 LV10
2018年12月24日
wenxin2018 LV1
2018年11月20日
poli33 LV1
2018年10月25日
老刘啊 LV2
2018年4月21日
wxsuperwx LV17
2018年2月1日
qq251106680 LV3
2017年11月9日
dl659257617 LV1
2017年9月15日
n3189543565 LV18
2017年3月29日
果汁听 LV2
2016年10月11日
最近浏览
uni-code_0123 LV1
2023年11月29日
nb3121 LV1
2022年12月19日
六六六六六六 LV2
2022年4月18日
书虫冲冲冲冲
2021年1月12日
暂无贡献等级
byteyxr LV6
2020年7月23日
HJThhh LV1
2020年7月8日
lyd19931203 LV21
2020年6月16日
莉莉安 LV2
2020年6月12日
mzayy001
2020年5月12日
暂无贡献等级
pzy12345 LV8
2020年4月21日