freemarker 解析对象的某元素_Spring Boot使用freemarker解析、替换文本

本文介绍了如何在Spring Boot中利用Freemarker模板引擎解析和替换文本。通过展示一个微信模板消息推送的需求,解释了Freemarker的基本语法,如取值、判断和运算符,并给出了实际的例子,展示如何根据传入的JSON数据动态填充模板。
摘要由CSDN通过智能技术生成

没有需求,谈什么技术呢?之前有做过微信模版消息推送,今天遇到一个需求,需求方要求内容可以根据传入的字段自由组合,但是并不是毫无规则的组合,而是根据调用方传入的Json数据填充一个业务方自定义的模版。那么其实这个需求并不难,因为借助模版引擎就可以实现。那么接下来我们就进一步探究一下。

在Java中其实也有很多模版引擎,比如:freemarker、thymeleaf、velocity等,这里的选择freemarker作为我们这次的主角,

那么,在开始之前,先简单的了解它的几个基语法:

  • 取值:占位符方式${name},对象方式${obj.name}
  • 判断:#if>
  • 比较:#if>
  • 运算符:${num+num1},${num-num1}

在开始之前,我们需要先引入jar包:

org.freemarkerfreemarker2.3.30

好了,继续我们今天的主题。来,先举个例子,下面是我的微信模版配置

模版key替换内容first该订单信息${orderNo},共支付${money}keyword1${orderNo}keyword2${orderTime}keyword3${money}keyword4${pay}remark说明${orderNo},通过${pay}支付了${money}假如我的请求参数是

{                "orderNo": "5555555",                "money": "8888888",                "orderTime":"2020-09-03 15:46:56",                "pay":"支付宝"            }

这里我们就借助freemarker来解析我们的模版,

 Map template = new HashMap() {
   {            put("first", "该订单信息${orderNo},共支付${money} ");            put("keyword1", "${orderNo}");            put("keyword2", "${orderTime}&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值