文档章节

springboot系列十四 web模板 freemarker thymeleaf

yimingkeji
 yimingkeji
发布于 2018/12/28 21:18
字数 263
阅读 55
收藏 2

Freemarker

https://freemarker.apache.org/

http://freemarker.foofun.cn/

springboot中freemarker的默认配置

package org.springframework.boot.autoconfigure.freemarker;

import java.util.HashMap;
import java.util.Map;
import org.springframework.boot.autoconfigure.template.AbstractTemplateViewResolverProperties;
import org.springframework.boot.context.properties.ConfigurationProperties;

@ConfigurationProperties(
    prefix = "spring.freemarker"//配置文件默认前缀
)
public class FreeMarkerProperties extends AbstractTemplateViewResolverProperties {
    public static final String DEFAULT_TEMPLATE_LOADER_PATH = "classpath:/templates/";//默认静态资源位置
    public static final String DEFAULT_PREFIX = "";//默认前缀
    public static final String DEFAULT_SUFFIX = ".ftl";//默认后缀
    private Map<String, String> settings = new HashMap();
    private String[] templateLoaderPath = new String[]{"classpath:/templates/"};
    private boolean preferFileSystemAccess = true;

    public FreeMarkerProperties() {
        super("", ".ftl");
    }

    //省略...
	//其他见父类
}

示例

依赖

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

简单配置

spring:
  freemarker:
    cache: false #生成环境可设置为true
    template-loader-path: classpath:/static
    suffix: .ftl

页面模板

在resource目录下新建目录 static,然后新建个文件 index.ftl

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Freemarker测试</title>
</head>
<body>
    <h1>姓名:${name}</h1>
</body>
</html>

web处理器

添加一个springmvc控制器

@Controller
public class IndexController {
    @RequestMapping({"","index"})
    public String index(Model model){
        model.addAttribute("name", "哈哈哈");
        return "index";
    }
}

查看效果

启动项目后,访问 localhost:8080

Thymeleaf

参考 https://gitee.com/yimingkeji/springboot/tree/master/thymeleaf

© 著作权归作者所有

yimingkeji
粉丝 14
博文 47
码字总数 30840
作品 0
杭州
私信 提问
加载中

评论(2)

yimingkeji
yimingkeji 博主

引用来自“HARRYChinese”的评论

推荐一下 pebble 模板引擎,功能强大到很简单
https://github.com/PebbleTemplates/pebble
是这个吗,有时间了看看,谢谢推荐
HARRYChinese
HARRYChinese
推荐一下 pebble 模板引擎,功能强大到很简单
SpringBoot笔记(五)模板引擎thymeleaf和freemarker

SpringBoot本来不应该关注这块,但是既然都学了,就看看吧 SpringBoot属于前后端分离的微服务框架,默认的模板引擎是thymeleaf,虽然也能支持JSP,但是比较麻烦,另外freemarker也是SpringB...

世外大帝
2018/04/25
0
0
SpringBoot | 第十六章:web应用开发

前言 前面讲了这么多章节,都没有涉及到前端web和后端交互的部分。因为作者所在公司是采用方式进行项目开发了。所以都是后端提供接口,前端根据或者服务自行调用的。后台也有读者说为何没有关...

oKong
2018/08/07
685
0
【SpringBoot系列03】SpringBoot之使用freemark视图模板

前言 freemarker介绍; FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而...

余空啊
2018/08/13
0
0
SpringBoot集成Thymeleaf

上一篇给大家介绍了springboot整合freemarker,这一片来继续为大家介绍一种模板thymeleaf。 首先在项目中增添thymeleaf依赖spring-boot-starter-thymeleaf 同时为了解决html严格校验报错的问...

dalaoyang
2018/03/15
0
0
(三)SpringBoot——模板引擎thymeleaf

一、SpringBoot支持的模板引擎 1、Thymeleaf(官方推荐) 2、FreeMarker 3、Groovy 4、mustache SpringBoot为什么不推荐使用JSP呢? 1、JSP对页面的侵入性较强。 2、web容器版本的的管理问题...

solidwang
2018/04/19
255
0

没有更多内容

加载失败,请刷新页面

加载更多

关于AsyncTask的onPostExcute方法是否会在Activity重建过程中调用的问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/XG1057415595/article/details/86774575 假设下面一种情况...

shzwork
今天
6
0
object 类中有哪些方法?

getClass(): 获取运行时类的对象 equals():判断其他对象是否与此对象相等 hashcode():返回该对象的哈希码值 toString():返回该对象的字符串表示 clone(): 创建并返此对象的一个副本 wait...

happywe
今天
6
0
Docker容器实战(七) - 容器中进程视野下的文件系统

前两文中,讲了Linux容器最基础的两种技术 Namespace 作用是“隔离”,它让应用进程只能看到该Namespace内的“世界” Cgroups 作用是“限制”,它给这个“世界”围上了一圈看不见的墙 这么一...

JavaEdge
今天
8
0
文件访问和共享的方法介绍

在上一篇文章中,你了解到文件有三个不同的权限集。拥有该文件的用户有一个集合,拥有该文件的组的成员有一个集合,然后最终一个集合适用于其他所有人。在长列表(ls -l)中这些权限使用符号...

老孟的Linux私房菜
今天
7
0
面试套路题目

作者:抱紧超越小姐姐 链接:https://www.nowcoder.com/discuss/309292?type=3 来源:牛客网 面试时候的潜台词 抱紧超越小姐姐 编辑于 2019-10-15 16:14:56APP内打开赞 3 | 收藏 4 | 回复24 ...

MtrS
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部