基于 Spring Boot 的 SSM 环境整合八:使用freemarker模板引擎

前文整合了thymeleaf 模板引擎,在使用中确实不太方便,于是研究了freemarker模板引擎,以下将两者做个简介的比对:

1、thymeleaf是springboot官方推荐的模板引擎,而freemarker不是。

2、thymeleaf要求模板必须符合xml规范,使用起来非常不方便。freemarker则自由很多。

3、thymeleaf模板文件实际上是静态html嵌入了标签属性,使用浏览器可以直接打开模板文件,便于前后端分离式开发和联调。

简介的说,如果项目较大,前、后台分离式开发且比较规范,建议使用thymeleaf,否则使用freemarker更为方便。

1、修改pom.xml

注释原 thymeleaf引用,添加freemarker引用:

    
    
    
	  org.springframework.boot
	  spring-boot-starter-freemarker
	

记得执行Maven clear和Maven install。

2、修改springboot 配置文件

修改application.properties文件,注释thymeleaf配置,添加freemarker配置:

## -----------------------------------------------------------------
## thymeleaf 模板配置
## -----------------------------------------------------------------
## 关闭thymeleaf缓存,仅在开发时使用
#spring.thymeleaf.cache=false
## 检查模板是否存在,然后再呈现
#spring.thymeleaf.check-template-location=true
## Content-Type值
#spring.thymeleaf.content-type=text/html
## 模板编码
#spring.thymeleaf.encoding=UTF-8
## 在构建URL时预先查看名称的前缀
#spring.thymeleaf.prefix=classpath:/templates/
## 在构建URL时添加到视图名称后的后缀(默认值:.html)
#spring.thymeleaf.suffix=.html

# -----------------------------------------------------------------
# freemarker 模板配置
# -----------------------------------------------------------------
# 模板文件后缀名
spring.freemarker.suffix=.html
spring.freemarker.content-type=text/html
spring.freemarker.enabled=true
# 是否开启缓存
spring.freemarker.cache=false
# 模板加载路径 按需配置
spring.freemarker.template-loader-path=classpath:/templates/
# 编码格式
spring.freemarker.charset=UTF-8

3、修改demo 视图

修改前文的demo视图文件如下:




    
    demo - index


	

demo-index.html - spring boot demo page


用户名称:${username}

返回结果:${result}

注意一下,我把改为
改为

启动应用,访问浏览器如下:

基于 Spring Boot 的 SSM 环境整合八:使用freemarker模板引擎_第1张图片

你可能感兴趣的:(SSM,maven,Spring,Boot)