SpringBoot整合Freemarker

什么是FreeMarker?

官方解说:
Apache FreeMarke是一个模板引擎:一个Java库,用于根据模板和更改的数据生成文本输出(HTML网页,电子邮件,配置文件,源代码等)。通常,使用通用编程语言(如Java)来准备数据(发出数据库查询,进行业务计算)。然后,Apache FreeMarker使用模板显示准备好的数据。
在模板中,您专注于如何显示数据,在模板之外,您专注于呈现什么数据。
在这里插入图片描述
现在前后端分离也少不了一些模板引擎的支撑。比如:Freemarker、Thymeleaf等等。

先提前说一下这篇博客的内容:
使用SpringBoot整合Freemarker,通过Java后端生成数据结合Freemarker模板页面在浏览器输出一些内容。

创建SpringBoot项目

可以参考下面的博客来创建SpringBoot项目
SpringBoot快速入门

引入Freemarker依赖

在创建完SpringBoot项目后,在pom.xml中引入freemarker依赖。

<!-- 引入freeMarker的依赖包. -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

这里不用指定freemarker依赖的版本,因为SpringBoot项目默认都会继承一个父工程,
在这个父工程中已经指定了常用第三方组件依赖的版本了,当然也包括了freemarker。

<parent>
 	<groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.2.2.RELEASE</version>
    <relativePath/>
</parent>

创建Freemarker模板文件

接下来我们在src/main/resources/templates目录下,新建一个后缀为*.ftl的文件。
在这里插入图片描述
myFreemarker.ftl文件内容如下:
在这里插入图片描述

创建FreemarkerController

@Controller
public class FreemarkerController {

    @RequestMapping("/freemarker")
    public String freemarker(){
        return "myFreemarker";
    }

}

再在application.properties中配置如下内容:
在这里插入图片描述
最后在浏览器输入:http://localhost:8080/freemarker,即可输出模板页面的内容。
在这里插入图片描述
这个只是简单的模板页面内容输出,还没结合Java后台生成的数据,接下来就测试在Freemarker模板页面渲染模型数据。

在FreemarkerController再添加一个控制方法:

@RequestMapping("/jAndFreemarker")
public String jAndFreemarker(Map<String,Object> result){
    result.put("name","xq");
    result.put("age","22");
    return "myFreemarker";
}

修改myFreemarker.ftl
在这里插入图片描述
在浏览器输入如下地址:http://localhost:8080/jAndFreemarker
在这里插入图片描述
好了,SpringBoot简单整合Freemarker就完成了。

源码可以前往这个GitHub地址
https://github.com/zwq19980122/SpringBoot

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值