创建word文件内容如下 将word导出为xml格式 将文件后缀名改为 .ftl 在springboot项目中添加freemarker依赖 <!-- 导出word文档--> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.20</version> </depend…
导出word带图片 如果你需要在word中添加图片,那你就在第一步制作模板时,加入一张图片占位,然后打开xml文档,可以看到如下的一片base64编码后的代码: <w:binData w:name="wordml://03000001.png" xml:space="preserve">iVBORw0…(很省略很省略)…CC</w:binData> 只要将 base64 的代码替换成例如: ${image} ,如下: <w:binDat…
.personSunflowerP { background: rgba(51, 153, 0, 0.66); border-bottom: 1px solid rgba(0, 102, 0, 1); border-top-left-radius: 7px; border-top-right-radius: 7px; color: rgba(255, 255, 255, 1); height: 1.8em; line-height: 1.8em; padding: 5px } 声明:转载需要注明…
前不久,公司一个项目需要实现导出文档的功能,之前是一个同事在做,做了3个星期,终于完成了,但是在项目上线之后却发现导出的文档有问题,此时,这个同事已经离职,我自然成为接班者,要把导出功能实现,但是我看了他写的那个ftl文档好久,就是没看懂,上面好多<w:pPr>.<w:rPr>.<w:szCs>.<w:t>等看不懂的标签,我也是无奈,在网上搜索“freemarker导出word文档”无果,后来才知道应该搜索的是“WordXML格式解析”.下面是我在做项目的过…
使用freemarker导出word文档的过程 ************************************************************************************* 我在开发过程中,使用到了freemarker导出报表,报表内容包括文字说明,表格数据以及图表展示,其中最多工作是在配置ftl文件格式,根据word导出排版进行调整文字格式,表格规范和图片大小位置等. ****************************************…
1.word另存为xml:2.xml文件后缀名改成ftl:3.编写完整json字符串备用:4.修改ftl中动态字段为json中对应字段名:5.编写java代码自动生成word文件:(注意:换行用<w:br/>) 消防设施故障维修记录表.doc: package freemarkerExportWord; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java…
spring boot+freemarker+spring security标签权限判断 SpringBoot+SpringSecurity+Freemarker项目中在页面上使用security标签控制按钮显示隐藏达到对按钮级权限控制还是比较方便的,如下配置即可. 1.引入依赖 <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-t…
Spring boot Freemarker 获取ContextPath的两种方法: 1.自定义viewResolver,Spring boot中有一个viewResolver,这个和配置文件中的师徒解析器是一样的,但是spring boot不允许xml配置文件,所以可以写一个自定义的FreeMarker视图解析器. public class MvcConfig extends WebMvcConfigurerAdapter { @Bean public FreeMarkerViewResolv…
首先,了解下freemarker导出word的流程: 参考https://www.cnblogs.com/llfy/p/9303208.html 异常一: freemarker.core.ParseException: Encountered "<" at line 3, column 3011 in niuwode.ftl.Was expecting one of:    <STRING_LITERAL> ...    <RAW_STRING> ... …
java使用FreeMarker导出word 一.      先做一个word模板 二.      将该word文件另存为xml格式(注意是另存为,不是直接改扩展名) 三.     打开xml文件把要导出的文字都加上${xxx} 例如:${bianhao} 导出表格要在目标行(例如:bianhao这一行)的<w:tr></w:tr>标签包一个<#list xxx as xxx></#list> 例如:<#list userlist as userlis…
需求缘起:有人在群里@我:请教群主大神一个问题,spring boot  + freemarker 怎么获取contextPath 头疼死我了,网上没一个靠谱的 .我就看看之前博客中的 [Spring Boot使用模板freemarker]好像确实没有介绍到在.ftl文件中如何获取contextPath,这就是本文解决要解决的问题. 本章大纲: (1)问题的提出:(2)spring中是如何定义requestContextAttribute的:(3)Spring Boot应该如何定义呢?(4)有更…
  需求缘起:有人在群里@我:请教群主大神一个问题,spring boot  + freemarker 怎么获取contextPath 头疼死我了,网上没一个靠谱的 .我就看看之前博客中的 [Spring Boot使用模板freemarker]好像确实没有介绍到在.ftl文件中如何获取contextPath,这就是本文解决要解决的问题. 本章大纲: (1)问题的提出:(2)spring中是如何定义requestContextAttribute的:(3)Spring Boot应该如何定义呢?(4)…
思路解说 word 模板文件(doc 或 docx 文件)另存为 xml 文件 将后缀 xml 改成 html:大部分文档会改成 ftl(FreeMarker 的后缀名),因为 word 文件另存为 xml 文件后,xml 文件中的代码很乱,后面的修改会很麻烦,因为我习惯用 VSCode 编辑器,安装 Beautify 插件后,可以自动格式化 html 代码,这样有利于后面的修改 将内容用${param}替换:例:姓名:月牙坠-->姓名:${name} word 文件中的图片是 Base64 编…
最近在写一些Web的东西,技术上采用了Spring Boot + Bootstrap + jQuery + Freemarker.过程中查了大量的资料,也感受到了前端技术的分裂,每种东西都有N种实现,组合起来,每种解决方案的资料却很有限. 这篇文章记录下多语言国际化的实现,以支持中英文为例. 首先是页面内容的国际化 1.定义页面文本配置文件的路径,在application.properties里添加spring.messages.basename=i18n/messages 2.在_resour…
Spring Boot官网:http://projects.spring.io/spring-boot/ 环境准备:maven 3.3.5.jdk8.Idea 1.创建maven项目工程 2.引入starters <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version&g…
最近项目导出word碰到一个需求,要求根据数据动态的决定word里的复选框是否勾选, 公司导出word用的是freemarker,相比较其他技术,freemarker可以很容易的控制输出样式, 在word里编辑好模板,将要输出的数据用${变量名}代替,然后java代码里给变量塞了值就可以输出了. 首先我们要知道在word里打钩和不打勾的复选框究竟是什么,新建一个word文档,在里面分别输入打钩和不打勾的复选框,然后右键另存为.xml文件, 因为freemarker导出就是在这样的xml文件的基础…
概述 最近一个项目要导出word文档,折腾老半天,发现还是用freemarker的模板来搞比较方便省事,现总结一下关键步骤,供大家参考,这里是一个简单的试卷生成例子. 详细 代码下载:http://www.demodashi.com/demo/10264.html 最近一个项目要导出word文档,折腾老半天,发现还是用freemarker的模板来搞比较方便省事,现总结一下关键步骤,供大家参考,这里是一个简单的试卷生成例子. 一.模板的制作 先用Word做一个模板,如下图: (注意,上面是有表格的…
  写在前面的话:写博客的初衷是想把自己学到的知识总结下来,在写的过程中,相当于又把知识梳理了一遍.我坚信有输入,有输出,技术才会进步.我一般都会自己写一个小demo,测试没有问题,再进行整理. 在实际做项目的过程中,遇到问题,也是各种查,所以很感谢把知识分享出来的人,而我也愿意把我自己学到的知识写下来,一来是巩固,二来如果能帮助到别人,那就更好啦. 我写的有些方法,看来有些笨,我也会继续探索和研究.如有更好的方法,可以一起交流. 正文开始~~~~ 一.jQuery-Word-Export导出w…
通过freemarker,以及JAVA,导出word文档. 共分为三步: 第一步:创建模板文件 第二步:通过JAVA创建返回值. 第三步:执行 分别介绍如下: 第一步: 首先创建word文档,按照想要的格式写好模板,需要替换的位置,使用 ${}  占位,其{}中放入名称,以便执行代码时使用. 例子如下 这个模板只要是报告的格式,包括报告名称,报告时间,报告人.下边的是编号和标题,以及内容.因为标题和内容方面可能存在多个,在后边可以循环输出. 制作完成之后,将该文档另存为xml格式.(注意:尽量选…
本片博客是紧接着Spring Boot 入门(十一):集成 WebSocket, 实时显示系统日志写的 关于poi.jxl和esayExcel的介绍自行百度. jxl最多支持03版excel,所以单个sheet页面最多只能导出65536条数据. 我直接将excel导入到浏览器并打开,以下统计导出时长指将数据从数据库查询,并写入到excel的过程.不包括打开excel所消耗的时间 为了接近真实场景,我建了一个表,一共有32个字段,其中2个id:一个自增长.一个UUID,10个int型字段,10个S…
FreeMarker 跟 Thymeleaf 一样,是一种模板引擎,他可以无缝兼容 FreeMarker 在 Spring Boot 开发者中仍然有着很高的地位. 本章重点内容 编写一个最简单的 Freemark 模板示例 简单说明 FreeMarker 本项目源码下载 1 FreeMarker 简介 相对于 Jsp ,FreeMarker 具有太多的优势.FreeMarker 适合 Mvc 场景. FreeMarker 最大的特点就是具有可编程能力,可以对任何后台输出的数据做编程能力,这就像在…
环境准备 一个称手的IDE(首选Myeclipse,也可以选Eclipse) Java环境(JDK 1.7或以上版本) Maven 3.0+(Eclipse和Idea IntelliJ内置,如果使用IDE并且不使用命令行工具可以不安装) 一个最简单的Web应用 使用Spring Boot框架可以大大加速Web应用的开发过程,首先在Maven项目依赖中引入spring-boot-starter-web: pom.xml <?xml version="1.0" encoding=&q…
启动spring boot 项目(一般是openapi) http://localhost:8888/swagger-ui.html 端口号可以自己配…
配置文件中添加插件 <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.0.5.RELEASE</version> <executions> <execution> <goals> <goal>repa…
这几天我在工作中用到了echarts开发报表.每次查询出来的数据都是新的,但是echart展现的图形报表却还是之前的数据.网上找了搜索了很多次也没能解决,后面加了技术群才解决的. 我开始已经确定是报表缓存的问题了,并不是数据的问题,但苦于找不到解决的办法,查看相关文档也没找到(可能是没仔细找),其实主要是用到了echarts的clear()方法. //清空画布,防止缓存barChart.clear();barChart.setOption(option, true);…
最近需要将jsp部分页面导出为word文件,环境是Spring+SpringMVC+Hibernate. 我使用的是FreeMarker模板引擎来完成.这是FreeMarker的中文参考手册,感兴趣的看一下.http://freemarker.foofun.cn/ 好啦,接下来正式动手之前我们需要把相应的jar包下载好并导入,下面是最新的链接. https://freemarker.apache.org/freemarkerdownload.html 我们要做的事情其实很简单,准备一个word模…
关键代码: <% Response.Clear() Response.CodePage= Response.Charset="UTF-8" Response.ContentType ="application/vnd.ms-word" Response.AddHeader )&".doc"%><?xml version="1.0" encoding="UTF-8" standalo…
一.添加maven依赖,导入FreeMarker所需要的jar包 <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.20</version> </dependency> 二.定义word模板文件 三.修改模板xml文件 把刚刚制作的word文件另存为xml文件 修改这个x…
1.用Microsoft Office Word打开word原件: 2.把需要动态修改的内容替换成***,如果有图片,尽量选择较小的图片几十K左右,并调整好位置: 3.另存为,选择保存类型Word 2003 XML 文档(*.xml)[这里说一下为什么用Microsoft Office Word打开且要保存为Word 2003XML,本人亲测,用WPS找不到Word 2003XML选项,如果保存为Word XML,会有兼容问题,避免出现导出的word文档不能用Word 2003打开的问题]: 4…
public class CreateWordDemo { public void createDocContext(String file) throws DocumentException,IOException { // 设置纸张大小 Document document = new Document(PageSize.A4); // 建立一个书写器(Writer)与document对象关联,通过书写器(Writer)可以将文档写入到磁盘中 RtfWriter2.getInstance(do…