Struts2实现简单的上传功能
来源:互联网 发布:备份数据库的sql语句 编辑:程序博客网 时间:2024/05/16 06:41
Struts2提供的文件上传下载机制十分简便,使得我们写很少的代码,就可以实现该功能,单文件上传、多文件上传、下载等。
当然,我们肯定要引入Struts2上传下载文件相关的jar包的,这里需要引入这两个包:commons-io-1.3.2.jar和commons-fileupload-1.2.1.jar
编辑Action代码,实现单文件的上传
package com.lf.zym.struts2;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import com.opensymphony.xwork2.Action;public class UploadTestAction {private String title;private String myFileFileName;private File myFile;private String myFileContentType;public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getMyFileFileName() {return myFileFileName;}public void setMyFileFileName(String myFileFileName) {this.myFileFileName = myFileFileName;}public File getMyFile() {return myFile;}public void setMyFile(File myFile) {this.myFile = myFile;}public String getMyFileContentType() {return myFileContentType;}public void setMyFileContentType(String myFileContentType) {this.myFileContentType = myFileContentType;}public String execute() throws Exception{InputStream is=null;OutputStream os=null;try {is = new BufferedInputStream(new FileInputStream(myFile));os = new BufferedOutputStream(new FileOutputStream("f:\\"+myFileFileName));byte[] buffer = new byte[1024];int len=0;while((len=is.read(buffer))>0){os.write(buffer,0,len);}}finally{if(is !=null){is.close();}if(os!=null){os.close();}}return Action.SUCCESS;}}Struts2.xml配置:
<struts><constant name="struts.i18n.encoding" value="UTF-8"/><constant name="struts.configuration.xml.reload" value="true"/><constant name="struts.devMode" value="true"/><package name="upload-package" extends="struts-default"><action name="upload" class="com.lf.zym.struts2.UploadTestAction"><result>/success.jsp</result></action></package></struts>
JSP页面:
<body> <form action="upload.action" method="post" enctype="multipart/form-data"> 标题:<input type="text" name="title"> 文件:<input type="file" name="myFile"> <input type="submit" value="上传"> </form> </body>
上传成功之后,在指定的文件存放位置就可以找到我们上传的文件,在这里遇到这样一个问题,当我传大文件的时候,会报错,上传失败。这是因为我们没有设置上传文件的大小,只需要设置一下就可以,可以建立一个struts.properties,设置上传文件的大小:
struts.multipart.maxSize=10485760
也可以直接在struts2中进行配置:
<constant name="struts.multipart.maxSize" value="10485760"/>
多文件的上传,还有下载功能实现在下一篇博客会总结。
1 0
- Struts2实现简单的上传功能
- struts2 实现简单的文件上传、下载功能
- struts2文件上传功能的实现
- Struts2实现文件的上传功能
- Struts2实现简单上传
- Struts2实现简单的文件上传
- struts2简单的文件上传实现
- struts2实现文件批量上传功能
- struts2实现文件上传功能
- struts2实现图片上传功能
- kindeditor完美整合struts2实现图片上传的功能
- 使用Extjs Struts2 实现文件的上传功能
- 关于使用struts2实现基本的文件上传功能
- struts2实现图片的上传以及下载功能
- struts2 实现简单BBS功能
- 【Struts2框架】第八节上传-利用struts2实现上传功能
- 使用Struts2实现简单的文件上传和下载
- 基于struts2实现文件上传功能
- hibernate的CRUD操作
- 怎么将一个16进制字符串转化为10进制输出?
- apache kafka总结
- Linux数据重定向详细分析
- Problem1007
- Struts2实现简单的上传功能
- 上传图片预览JS脚本 Input file图片预览的实现示例
- 寄存器、缓存、内存、硬盘、存储器的理解
- Java 枚举对象的使用
- Redis 集群搭建与连接
- 图像处理与计算机视觉中的经典文章
- Intellij IDear配置自定义浏览器预览效果
- struts标签取值问题
- 裘宗燕:C/C++ 语言中的表达式求值