框架学习之struts2-05文件上传、下载、ajax整合json
来源:互联网 发布:淘宝内衣模特王文雨 编辑:程序博客网 时间:2024/06/06 01:08
struts2文件上传、下载、ajax整合json
文件上传
1. 导相应的包,百度搜索
2. 表单的处理,在属性中加入属性enctype=”multipart/form-data”
3. 在目标处理器类中声明一个文件,并且名字要和表单中的文件名字一致还可以声明文件名和文件类型,必须是上传 文件名+FileName和文件名+ContentType
4. 完全用框架,那么可以按照下面的操作来:
<action name="bookSave" class="sample.s2.web.action.BookAction" method="save"> <param name="fileSavePath">/photo/</param> <interceptor-ref name="defaultStack"> <param name="fileUpload.maximumSize">204800</param> <param name="fileUpload.allowedTypes">image/gif, image/png, image/jpeg</param> </interceptor-ref> <result name="input">/WEB-INF/jsp/manage/book-mgr.jsp</result> </action>
上述的配置中控制了文件上传的大小和格式,并且传递了文件上传的保存路径
5. 文件经过校验后,在java程序中就可以使用工具类FileUtils调用copyFile(pic, new File(filePathName))方法保存上传文件
6. 文件上传失败的提示信息可以单独卸载一个properties文件中,具体的字段键名:
struts.messages.error.file.too.large=……
struts.messages.error.content.type.not.allowed=……
在页面上的输出:<s:fielderror fieldName="pic" />
文件下载
1.下载文件需要配置xml
<action name="downloadFGT" class="sample.s2.web.action.DownloadFGTAction"> <result type="stream"> <param name="inputName">fgtInputStream</param> <param name="contentType">image/jpeg</param> <param name="contentDisposition">attachment; filename=${fileShowName}</param> </result> <result name="error">/WEB-INF/jsp/manage/book-mgr.jsp</result> </action>
上述中的配置需要配置文件的MIME类型,文件的名字(attachment; filename=${fileShowName}),文件的传输方式是以流的方式
2. 文件的名字由服务器提供,在传输的时候可以设置编码:String fileName= URLEncoder.encode(fileShowName, “UTF-8”);
3. 在服务器端获得文件的下载路径,根据文件的路径获得一个字节流
InputStream streamName = ServletActionContext.getServletContext().getResourceAsStream("文件路径");
由此获得的流响应给客户端,完成下载
ajax请求整合json数据
1. 导struts2整合的相应的包
2. 在配置文件中把extends=”struts-default”改为”json-default”
3. 在action中设置result的type为”json”,参数配置为”root”,参数值直接给一个数据结果集的名字,比如数组、列表等
<result type="json"> <param name="root">dataResult</param> </result>
返回的json结果直接被前段解析
4. 基于jquery的json解析,直接遍历输出即可(如果不用struts2的框架返回json,我们也可以自己手动封装json数据)
- 框架学习之struts2-05文件上传、下载、ajax整合json
- 框架学习之springMvc整合框架-02文件上传、下载、国际化、拦截器、异常框架
- 框架整合学习---struts2+ajax示范
- Struts2框架之文件上传
- Struts2学习笔记之文件的上传与下载
- Struts2学习笔记之文件的上传与下载
- struts2学习之文件的上传与下载
- Struts2.x 学习笔记 之 文件上传和下载
- Struts2框架11.文件上传与下载
- Ajax框架之DWR学习(文件上传案例)-yellowcong
- Jimoshi_Struts2 框架学习(三)--valueStack和ognl、struts2验证、struts2文件上传和下载
- jquery之与struts2整合异步上传文件时弹出下载对话框的解决方法
- Struts2+ajax+json整合简介
- Struts2+ajax+json整合简介
- struts2学习之文件上传
- struts2学习之---文件上传
- Struts2————学习笔记6 文件的上传与下载 以及AJAX
- Spring整合Struts2实现多文件上传及下载
- D3 笔记七:交互事件、event、this
- 一起走进Java虚拟机的世界 —— 为什么要弄懂虚拟机
- DOM编程-事件(二)
- Dasha and Stairs
- C#中数组的属性和方法
- 框架学习之struts2-05文件上传、下载、ajax整合json
- Golang爬虫基础:通过代理IP发送请求
- CSS测试题
- [leetcode] 257. Binary Tree Paths
- DOM编程-事件(三)
- Linux 查找工具 find、grep
- 【简记】Java Web 内幕——Mybatis框架小结
- H5 学习笔记2
- DOM编程-事件(四)