最近在做项目,要做一个功能: 导出word试卷。

之前是有一个功能是查看试卷功能。但是需要把 试卷下载下来归档保存。
现在我们来分析一下: 既然我已经有了查看试卷功能。 要实现导出word . 就相当于把查看页面下载保存成word的格式。

我们知道 浏览器解析 后台给的视图,这个视图 可以是 html 又或者是 word, PDF (什么,兄弟,你你没有见过 pdf 和word,那你可以去 一些电子元器件手册网站看看手册,就知道你看的是pdf)。

现在我们已经知道,我们需要 后台给的视图的 word格式的,而不是html。好,我们已经把问题拆解开来了。

现在我们需要 把视图下载下来。 使用response 设置head 信息。是响应是下载,而不是浏览器给你解析。

好了,我们现在已经把问题解决了。 来看看我们怎么解决问题的。

  1. 服务器给浏览器的视图不是html而是 word
  2. 服务器响应浏览器的不是发送视图而是下载视图。

。现在我们开始看代码是如何实现:

  1. 把 jsp 页面的 <%@ page contentType="application/msword; charset=UTF-8" pageEncoding="UTF-8" %>
    contentType 就是我们 决定 返回视图的格式。
    看这里,查看更多 contentTyp 的 可使用的值

  2. 我们控制器要做 response head 的设置。

    我们之前查看视图的控制器:

     @requestMapping (value="toView")public string toView(Paper paper,model model){service //此处伪代码 return "your view ";
}

我们做导出的 控制器:

 @requestMapping(value="exportWord")public string exportWord(Paper paper ){service // 此处伪代码 response.reset();
response.setContentType("application/msword; charset=UTF-8");
response.setHeader("Content-Disposition", "attachment; filename=" +new String(name+".doc") .getBytes("gb2312")."ISO8859-1");return "your view";}

到现在就基本解决了,如何实现导出word 功能。

java也有导出word 的组件 apache 的 poi。
但是这个好像导出的时候 是需要模版的。

一下是一些参考资料(值得看看):

1.response.setHeader()的用法
2.HTTP协议中的ContenType类型大全
3.HTTP响应实例教程 —— 基本使用、生成Cookie、返回视图、JSON/JSONP、文件下载及重定向
4.Java 实现HTML富文本导出至word完美解决方案

实现导出word 功能相关推荐

  1. 导出word功能,用html代码在word中插入分页符

    <span lang=EN-US style="font-size:10.5pt;mso-bidi-font-size:12.0pt;font-family:" mce_st ...

  2. 简单快捷通用导出word功能

    我们在项目开发过程中,经常会用到导出word表单的功能,在这分享一个导出word的速成方法: 开发步骤: 1.需要准备一个要导出的以.doc结尾的word格式模块,中间最好有填入的数据(我在这就以简单 ...

  3. java实现导出word功能(包含图片)一

    一.目的 这个功能已经完成很久了,一直没有想起来去整理成文,今天就把它整理出来,供大家参考和批评.这个导出功能也研究了好几天,同时也看了很多人写的博客,真的是千篇一律,好多都不是我想要的功能,为什么要 ...

  4. java导出word功能(包含图片)二

    上一章写了导出html其实基本能满足条件,开写mht格式下的word mhtblog.ftl MIME-Version: 1.0 Content-Type: multipart/related; bo ...

  5. spring boot 根据模板导出word功能实现,包含html内容,及office打开乱码问题的解决!!!

    使用freemark来实现 yml配置文件: template-loader-path: classpath:/templates/ftl/ 这个是配置模板所在的位置 这里的配置要是带"/& ...

  6. 关于Typora +pandoc导出文件功能的介绍(具体案例:导出word文件)

    关于Typora +pandoc导出文件功能的介绍(具体案例:导出word文件) 说明: 1: 大家能看到此篇文章时,博主就当默认大家对Typora以及pandoc是个什么鬼已经有所了解啦奥,这里就不 ...

  7. java 如何将word 转换为ftl_使用 freemarker导出word文档

    近日需要将人员的基本信息导出,存储为word文档,查阅了很多资料,最后选择了使用freemarker,网上一共有四种方式,效果都一样,选择它呢是因为使用简单,再次记录一下,一个简单的demo,仅供参考 ...

  8. 0002、Freemarker导出Word文档

    做了一个导出Word功能,记录下遇见的坑和技术 一开始我用的poi-tl,在本地执行一切都没有问题,部署到测试环境就报错,在排查一段原因之后发现docx模板在打包jar包的时候会乱码,搞了好久,没搞好 ...

  9. java word合并单元格_java使用freemarker模板导出word(带有合并单元格)文档

    前言:最近要做一个导出word功能,其实网上有很多的例子,但是我需要的是合并单元格的,可是查了好久都没有自己想要的.研究了几天其实挺简单的,在这儿我就简单的介绍一下吧!(此方法只是一种思路,借鉴者还有 ...

最新文章

  1. CS专业读PhD是否有意义?附CS奖学金项目清单
  2. 计算机仿真实验用的教学软件是,AR增强现实教学软件,学习效果倍增
  3. 【工具推荐】ELMAH——可插拔错误日志工具(转)
  4. getElementsByName 的应用,获取组的选择值
  5. 支付宝支付回调是什么意思_支付宝邮箱是什么
  6. 在Gradle 2.13中更好地处理“在插件Y上找不到属性X”
  7. 阿里云专属数据库,重新定义云数据库新形态
  8. c语言中数组名可以与其他变量名相同,C语言初学者入门讲座 第九讲 数组(1)...
  9. 海量运维、运营规划之道
  10. 每隔10秒执行一次_(立下flag)每日10道前端面试题12 关于BOM十问
  11. Linux内核 设备树操作常用API【转】
  12. python圈出车牌字符_Python+OpenCV实现车牌字符分割和识别
  13. Pyinstaller将外部数据文件打包到可执行文件中(onefolder or onefile)教程
  14. 千人千面是php算法吗,推荐算法可以做到千人千面,但它的流量利用效率一定是优于人工分发吗?...
  15. idea教育版增加springboot插件
  16. 量子计算机可以预测未来吗,这台量子计算机可以同时预测16种不同的未来
  17. 在互联网大厂,我月入过万,合租却让我落泪
  18. ESPDUINO上传数据到oneNet云平台
  19. 电脑恶意软件删除方法
  20. pip安装超时,Exception:Traceback(most recent call last)

热门文章

  1. Excel 核对两张表格的差异数据方法
  2. double转int类型
  3. 2020-09-10(抽象类+接口练习 部分附源码)(包装类笔记)
  4. 小小军团获取服务器配置文件,小小军团新手攻略 系统解析
  5. Centos6.8无法设置输入法
  6. 小白的蚁群算法学习总结
  7. Shiro集成kisso,搭建单点登录系统
  8. noip2018 爆炸记
  9. 《神经网络与深度学习》-概率图模型
  10. Event和Mutex区别