实现导出word 功能

最近在做项目,要做一个功能: 导出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完美解决方案

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值