【知识积累】springboot整合beetl

一、简介

官网:http://ibeetl.com/guide/#beetl

github:https://github.com/dg1222/spring-boot

简介:

【知识积累】springboot整合beetl_第1张图片

二、Maven依赖

【知识积累】springboot整合beetl_第2张图片

三、配置文件

3.1、application.properties

【知识积累】springboot整合beetl_第3张图片

3.2、beetl.properties

【知识积累】springboot整合beetl_第4张图片

3.3、配置模板引擎

【知识积累】springboot整合beetl_第5张图片

【知识积累】springboot整合beetl_第6张图片

四、使用

4.1、修改资源文件后缀,默认是btl

【知识积累】springboot整合beetl_第7张图片

application.properties中配置:

beetl.suffix=html

4.2、变量

4.2.1、临时变量

4.2.2、共享变量所有模板都能访问的变量

默认共享变量:${ctxPath}

普通共享变量:${beetlTitle}

【知识积累】springboot整合beetl_第8张图片

4.2.3、全局变量整个模板都能访问的变量

template.bind("key",object)

4.3、遍历

【知识积累】springboot整合beetl_第9张图片

4.4、时间格式化

4.5、内置方法

4.5.1、常用内置方法

【知识积累】springboot整合beetl_第10张图片

【知识积累】springboot整合beetl_第11张图片

4.5.2、字符串、数组、正则表达式相关方法

【知识积累】springboot整合beetl_第12张图片

4.6、安全输出

两种用法:

当变量为null、不存在、子属性为null时,不输出

当变量为null、不存在、子属性为null时,输出默认值

4.7、标签函数(允许处理模板文件里的一块内容):layout

layout.html

【知识积累】springboot整合beetl_第13张图片

${title}:layout标签函数的参数

${layoutContent}:是layout标签体渲染后的结果

调用:

4.8、定界符、占位符

定界符:界定动态beetl语言和html静态代码之间的符号,在<% …… %>中间的代码是beetl代码,会被beetl模板引擎编译,之外的就是html静态代码,beetl语法不会生效。

占位符:在静态代码中占一个位置,占位符中可以使用表达式、函数,占位符中的代码将会被beetl引擎编译。

【知识积累】springboot整合beetl_第14张图片

beetl.properties配置文件中覆盖默认配置(结束符为空或者为null,表示是以回车作为结尾):

【知识积累】springboot整合beetl_第15张图片

4.9、HTML标签

4.9.1、beetl.properties配置文件中覆盖默认配置:

【知识积累】springboot整合beetl_第16张图片

templates目录下创建tag目录:

【知识积累】springboot整合beetl_第17张图片

4.9.2、新建HTML标签

【知识积累】springboot整合beetl_第18张图片

4.9.3、使用

4.9.4、注意事项

【知识积累】springboot整合beetl_第19张图片

4.10、自定义方法

4.10.1、实现Function

【知识积累】springboot整合beetl_第20张图片

【知识积累】springboot整合beetl_第21张图片

beetl.properties注册自定义方法:

使用:

4.10.2、普通java类

【知识积累】springboot整合beetl_第22张图片

使用:

4.10.3、区别

【知识积累】springboot整合beetl_第23张图片

4.11、ajax局部渲染

layout.html

【知识积累】springboot整合beetl_第24张图片

使用:

【知识积累】springboot整合beetl_第25张图片

【知识积累】springboot整合beetl_第26张图片

五、问题

5.1、编码问题

【知识积累】springboot整合beetl_第27张图片

5.2、SpringBoot版本不兼容

无法解析templates目录下的index.btl
解决方案:将Spring Boot的版本由2.0.6.RELEASE升级到2.1.0.RELEASE

你可能感兴趣的:(前端)