springboot之模板

springboot之template

一、freemarker介绍

FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据,并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。

注1:springboot中支持的两种模板技术:thymeleaf/freemarker(默认)

二、使用步骤

1、引入依赖包

在pom.xml引入freeMarker的依赖包

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

springboot之模板

2、添加配置

在springboot中添加freemarker配置
在项目列表中找到.yml的文件
springboot之模板
打开之后,将如下这段改掉
springboot之模板
改成如下的代码:

freemarker:
	allow-request-override:false
	request-context-attribute:req
	suffix:.ftl
	content-type:text/html;charset=utf-8
	enabled:true
	cache:false
	template-loader-path:classpath:/templates/
	charset:UTF-8
	number_format:0.##

注意图片里的相对情况:
springboot之模板
这里可以参考一下,下方的YML基本语法。

3、编写模板文件

编写模板文件*.ftl(当做jsp使用即可)
这里可以自己去写一个要在界面上显示的东西,我则是写了一个简单的h5 springboot之模板
这里注意一下
springboot之模板

4、访问+页面跳转

访问控制器后进行页面跳转
springboot之模板

三、常用语法

1、插值

 welcome ${name}  to freemarker! 

注1:freemarker如果取值为空,是会报错,所以要对可能为空的值要进行处理,处理方案有两种:

  1. 提供默认值
    n a m e ! 或 {name!}或 name!或{name!‘未知’} !后面就是默认值
  2. 对null值先进行判断
    ??或if_exists
		  <#if name??>
           ${name}
          </#if>  
          <#if name?if_exists>
           ${name}
          </#if>

例图如下:
springboot之模板

2、条件

  <#if gender==0>  
          女  
  <#elseif gender==1>  
          男  
  <#else>  
          保密     
  </#if>

3、循环

将一个集合as一个item,然后输出集合里面的东西。

<#list friends as item>  
       姓名:${item.name} , 年龄${item.age}  
       <br>  
  </#list> 

4、include

<#include "./header.ftl" >

四、yml

YAML(Yet Another Markup Language)一种基于Unicode容易阅读,容易和脚本语言交互的,用来表达资料序列编程语言

1、基本语法

1、不同“等级” 用冒号隔开
2、次等级的前面是空格,不能使用制表符(tab)
3、冒号之后如果有值,那么冒号和值之间至少有一个空格,不能紧贴着

上一篇:freemarker中js里面取字符串,换行导致报错的解决办法


下一篇:SpringBoot整合FreeMarker模板引擎