JAVAWeb之struts2文件上传下载演示.doc

上传人:le****01 文档编号:205876 发布时间:2022-02-26 01:12:03 格式:DOC 页数:6 大小:62.58KB
下载 相关 举报
JAVAWeb之struts2文件上传下载演示.doc_第1页
第1页 / 共6页
JAVAWeb之struts2文件上传下载演示.doc_第2页
第2页 / 共6页
JAVAWeb之struts2文件上传下载演示.doc_第3页
第3页 / 共6页
JAVAWeb之struts2文件上传下载演示.doc_第4页
第4页 / 共6页
JAVAWeb之struts2文件上传下载演示.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《JAVAWeb之struts2文件上传下载演示.doc》由会员分享,可在线阅读,更多相关《JAVAWeb之struts2文件上传下载演示.doc(6页珍藏版)》请在万象文库上搜索。

JAVAWeb之struts2文件上传下载演示.doc_文档预览图

1、一、文件上传演示 1.需要的jar包 大多数的jar包都是struts里面的,大家把jar包直接复制到WebContent/WEB-INF/lib目录下面即可,需要的jar包如下图所示,其中的javax.servlet.jar是额外添加的,我到网上随便搜了一个下载地址http:/ 2.配置web.xml 配置WebContent/WEB-INF/web.xml中的内容,如果你的项目已经配置好了struts,这步可以跳过.Xml代码 1. 2. 3. UpDownDemo 4. 5. 6. 7. struts2 8. org.apache.struts2.dispatcher.ng.filter

2、.StrutsPrepareAndExecuteFilter 9. 10. 11. 12. struts2 13. /* 14. 15. 16. 17. index.jsp 18. 19. 3.Web界面 其中有一点是特别需要注意的:定义form的时候,一定要添加enctype=multipart/form-data,并且一定要设置method=post。示例Html代码 1. 3. 4. 5. 6. 7. 文件上传演示 8. 9. 10. 11. 12. 请选择文件 13. 14. 15. 16. 17. 18. 19. 4.后台JAVA代码 代码中有解析Java代码 1. package

3、action; 2. 3. import java.io.File; 4. import java.io.IOException; 5. import java.io.Serializable; 6. 7. import mons.io.FileUtils; 8. import org.apache.struts2.ServletActionContext; 9. 10. import util.Encrypter; 11. 12. import com.opensymphony.xwork2.ActionSupport; 13. 14. /* 15. * author Kingt.W 16.

4、 */ 17. SuppressWarnings(serial) 18. public class FileAction extends ActionSupport implements Serializable 19. /* 20. * 这里定义的变量,一定要跟网页的中的name属性的值一致. 21. * 如果网页中定义的是,那么在这里就要定义File img; 22. */ 23. private File file; 24. /* 25. * 这里定义的fileFileName一定要是xxxFileName的形式,否则无法取到文件的文件名. 26. * 其中xxx必须与上面定义的File

5、类型的变量一致,如果上面定义的是File img,那么这里就 27. * 定义为String imgFileName 28. */ 29. private String fileFileName; 30. /* 31. * 这里定义的是文件的类型,如果不需要获取文件类型的话,可以不定义. 32. * 命名规则跟xxxFileName类似,这里一定要定义成xxxContentType形式. 33. */ 34. private String fileContentType; 35. /* 36. * 这这个变量是重命名后的文件名 37. */ 38. private String newFile

6、Name; 39. 40. /getters and setters我省略了,没有复制上来 41. 42. public String upload() 43. System.out.println(文件名: + fileFileName); 44. System.out.println(文件类型: + fileContentType); 45. 46. if (file != null) 47. /文件的保存路径是WebContent/file目录下 48. String realpath = ServletActionContext.getServletContext() 49. .get

7、RealPath(/file); 50. System.out.println(文件的保存路径: + realpath); 51. 52. /文件的后缀 53. String suffix = fileFileName.substring(fileFileName 54. .lastIndexOf(.); 55. if (fileFileName.lastIndexOf(.) = -1) 56. return INPUT; 57. 58. 59. /上传以后,会重命名文件的名称,将其命名为全部是数字的文件名,防止可能出现的乱码. 60. /当然, 只是为了防止出现乱码,一般不会出现乱码 61.

8、 newFileName = Encrypter.randFileName() + suffix; 62. 63. File savefile = new File(new File(realpath), newFileName); 64. /如果保存的路径不存在,则新建 65. if (!savefile.getParentFile().exists() 66. savefile.getParentFile().mkdirs(); 67. 68. try 69. /复制文件 70. FileUtils.copyFile(file, savefile); 71. System.out.prin

tln(文件上传成功); 72. catch (IOException e) 73. e.printStackTrace(); 74. System.out.println(文件上传失败); 75. return INPUT; 76. 77. 78. 79. return SUCCESS; 80. 81. 5.配置struts.xml Xml代码 1. 2. 3. 4. 5. 6. download.jsp 7. download.jsp 8. 9. 10. 6.小注 至此,文件上传的功能就实现了。 由于我是在J2EE Eclipse下建的项目,所以如果大家把附件下载以后,导入J2EE Eclipse是可以直接运行的,导入其他的IDE应该是没法直接运行,但是可以先新建好项目以后,把我的项目中的文件放到对应的目录下面即可 效果图如下 选择文件,然后点击【确认上传】 上传文件的内容如下图所示 然后就可以在 eclipse工作空间.metadata.pluginsorg.eclipse.wst.server.coretmp0wtpwebappsUpDownDemofile下面找到刚刚上传的文件了。打开文件,发现两个记事本中的内容一样(在java代码中我有解释为啥会把文件重命名)

展开阅读全文
相关文档
推荐文档
2022年整理物业服务有限公司质量、环境、职业健康安全管理手册【两套汇编】供参考2022年机动车安全检验检测有限公司质量手册材料(2套)2022年整理机动车检测有限公司质量管理体系程序文件汇编【供参考】2020年节约光荣浪费可耻和文明餐桌我光盘我光荣两套课件合编2020年关于厉行勤俭节约反对铺张浪费课件两套合编2020年关于厉行节俭反对浪费两套课件合编2020年关于爱惜粮食厉行勤俭节约反对铺张浪费课件两套合编2022年关于机动车安全检验检测有限公司【两套】质量手册合编供参考制度范文集锦--物业公司奖罚制度(2022版)制度范文集锦--物业公司基础服务标准及公共管理规定(2022版)制度范文集锦--绩效管理手册(2022版)制度范文集锦--行政办公制度(2022版)制度范文集锦--分级采购管理规定(2022版)制度范文集锦--法律事务管理细则(2022版)制度范文集锦--车辆管理规定(2022版)制度范文集锦--保密制度(2022版)2021年度组织生活会个人剖析材料1768字文稿2021年在国家卫生城市巩固提升工作推进会上的讲话文稿2021年副县长在全县食品药品安全工作会议上的讲话稿2021年在市国资委系统人才工作座谈会讲话稿
相关搜索
资源标签

当前位置:首页 >

万象文库 |www.2wx.com版权所有
经营许可证编号:鄂ICP备19026039号