springboot FreeMarker模板

加入Freemarker依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

配置文件:

spring:
  freemarker:
    cache: false
    charset: UTF-8
    template-loader-path: classpath:/templates/
    suffix: .ftl

controller:

    @GetMapping("/freemarker/index")
    public String index(ModelMap modelMap) {
        modelMap.addAttribute("msg", "Hi , freemarker !");
        return "/freemarker/index";
    }

srcmain esources emplatesfreemarkerindex.ftl:

<!DOCTYPE html>
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>${msg}</h1>
</body>
</html>

访问:

http://127.0.0.1:8081/freemarker/index

介绍FreeMarker的常用语法。

(1)通用赋值:${xxx}格式

• 比如后台返回键值aaa=string,可以使用${aaa?string},输出“Hi , freemarker!”。

• 比如后台返回键值aaa="2018-08-01 23:59",可以使用${aaa?string("EEE,MMMd,yy")},输出:星期二,八月 14,18。

• 比如后台返回键值aaa=false,可以使用${aaa?string("是","否")},输出:否。

(2)数值赋值:#{xxx}或者#{xxx;format}格式后者format可以是以下格式(其中X和Y为数字):

• mX 小数部分最小X位,比如后台返回值aaa=3.782131,可以使用#{x;m2},输出3.78。

• MX 小数部分最大X位,比如后台返回值aaa=3.782131,可以使用#{x;M3},输出3.782。

• mXMY 小数部分最小X位,最大Y位,比如后台返回值aaa=3.782131,可以使用#{x;m1M3},输出3.782。

(3)常用内建函数

• html 对字符串进行HTML编码。

• lower_case 字符串转小写。

• upper_case 字符串转大写。

• trim 去前后空格。

• size 获取集合元素数量。

• int 获取数字部分。

(4)常用指令

• if elseif else 分支控制语句。

• list 输出集合数据。

• import 导入变量。

• include 类似于包含指令。

文章来源:Spring Boot 2实战之旅 3.5 使用页面模板

源码:https://gitee.com/caoyeoo0/xc-springboot/tree/FreeMarker%E6%A8%A1%E6%9D%BF/

原文地址:https://www.cnblogs.com/ooo0/p/14048635.html