基于Struts2文件上传
2015-12-10 13:41
190 查看
Java代码
jsp代码
Strut.xml代码
package com.company.project.action; 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; public class UploadAction extends ActionSupport { /** * */ private static final long serialVersionUID = 1L; // myFile属性用来封装上传的文件 private File myFile; // myFileContentType属性用来封装上传文件的类型 private String myFileContentType; // myFileFileName属性用来封装上传文件的文件名 private String myFileFileName; //获得myFile值 public File getMyFile() { return myFile; } //设置myFile值 public void setMyFile(File myFile) { this.myFile = myFile; } //获得myFileContentType值 public String getMyFileContentType() { return myFileContentType; } //设置myFileContentType值 public void setMyFileContentType(String myFileContentType) { this.myFileContentType = myFileContentType; } //获得myFileFileName值 public String getMyFileFileName() { return myFileFileName; } //设置myFileFileName值 public void setMyFileFileName(String myFileFileName) { this.myFileFileName = myFileFileName; } public String execute() throws Exception { //基于myFile创建一个文件输入流 InputStream is = new FileInputStream(myFile); // 设置上传文件目录 String uploadPath = ServletActionContext.getServletContext() .getRealPath("/upload"); // 设置目标文件 File toFile = new File(uploadPath, this.getMyFileFileName()); // 创建一个输出流 OutputStream os = new FileOutputStream(toFile); //设置缓存 byte[] buffer = new byte[1024]; int length = 0; //读取myFile文件输出到toFile文件中 while ((length = is.read(buffer)) > 0) { os.write(buffer, 0, length); } //关闭输入流 is.close(); //关闭输出流 os.close(); return SUCCESS; } }
jsp代码
<body> <form action="upload.action" method="post" enctype="multipart/form-data"> <table> <tr> <td>上传文件:</td> <td><input type="file" name="myFile"></td> </tr> <tr> <td><input type="submit" value="上传"></td> <td><input type="reset"></td> </tr> </table> </form> </body>
Strut.xml代码
<struts> <constant name="struts.devMode" value="false" /> <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <package name="default" namespace="/" extends="struts-default"> <action name="upload" class="com.company.project.action.UploadAction"> <result name="success">/index.jsp</result> <result name="input">/upload.jsp</result> </action> </package> </struts>
相关文章推荐
- sikuli类、函数使用参考java doc
- JAVA 内部类 总结
- Eclipse中新建Android项目时修改默认选项
- java获取时间并加上2个小时,格式化输出
- 利用Java迭代器删除list中元素
- eclipse创建Servlet报错:提示:The import javax.servlet.Filter cannot be resolved 等
- Java从设计模式[本场比赛状态转换武器]状态分析(State)模式
- Intellij IDEA配置JDK
- Struts2框架的搭建以及架构总结
- js 在myeclipse中报错
- 工作的时候用到spring返回xml view查到此文章亲测可用
- Spring mvc 标签
- ubuntu下JDK环境变量的配置
- spring roo反向工程
- spring roo初体验
- Spring Mvc @ResponseBody 返回Json信息报406(Not Acceptable)
- Java Web学习总结(19)——web.xml配置详解
- Java Web学习总结(19)——web.xml配置详解
- Java Web学习总结(19)——web.xml配置详解
- ImageMagick使用for java(im4java)