Springboot集成beetl模板

1、下面的博客看到第4步,也就点击finish的那步。

https://blog.csdn.net/pyfysf/article/details/78960977

2、pom.xml中添加依赖


   com.ibeetl
   beetl
   2.8.5

3、创建配置类 BeetlConf.java,可以和启动类XXXApplication.java放在同级目录下:

 

@Configuration
public class BeetlConf {
    private final Logger logger = LoggerFactory.getLogger(getClass());

    @Bean(name = "beetlConfig")
    public BeetlGroupUtilConfiguration getBeetlGroupUtilConfiguration() {
        BeetlGroupUtilConfiguration beetlGroupUtilConfiguration = new BeetlGroupUtilConfiguration();
        ClasspathResourceLoader classpathResourceLoader = new ClasspathResourceLoader();
        beetlGroupUtilConfiguration.setResourceLoader(classpathResourceLoader);
        beetlGroupUtilConfiguration.init();
        return beetlGroupUtilConfiguration;
    }
    @Bean(name = "beetlViewResolver")
    public BeetlSpringViewResolver getBeetlSpringViewResolver(
            @Qualifier("beetlConfig") BeetlGroupUtilConfiguration beetlGroupUtilConfiguration) {
        BeetlSpringViewResolver beetlSpringViewResolver = new BeetlSpringViewResolver();
        beetlSpringViewResolver.setPrefix("/templates/");
        beetlSpringViewResolver.setSuffix(".html");
        beetlSpringViewResolver.setContentType("text/html;charset=UTF-8");
        beetlSpringViewResolver.setOrder(0);
        beetlSpringViewResolver.setConfig(beetlGroupUtilConfiguration);
        return beetlSpringViewResolver;
    }
}

注意:beetlGroupUtilConfiguration.init(),没有这句很可能就起不来,我是没起来。

注意:beetlSpringViewResolver.setPrefix("/templates/") ,如果beetl.properties中的 RESOURCE.root= / 或者 没有此配置,则要有给添加这样的前缀(你的html文件是在templates中),如果beetl.properties中配置的 RESOURCE.root= /templates/ ,则注释掉beetlSpringViewResolver.setPrefix("/templates/")该行代码。

4、beetl.properties配置文件,与application.properties同级目录,配置内容如下(很多都是没有的,重点在根路径那行,默认是 /,下面会讲到):

 

ENGINE=org.beetl.core.engine.DefaultTemplateEngine
DELIMITER_PLACEHOLDER_START=${
DELIMITER_PLACEHOLDER_END=}
DELIMITER_STATEMENT_START=<%
DELIMITER_STATEMENT_END=%>
DIRECT_BYTE_OUTPUT = FALSE
HTML_TAG_SUPPORT = true
HTML_TAG_FLAG = #
HTML_TAG_BINDING_ATTRIBUTE = var
NATIVE_CALL = TRUE
TEMPLATE_CHARSET = UTF-8
ERROR_HANDLER = org.beetl.core.ConsoleErrorHandler
NATIVE_SECUARTY_MANAGER= org.beetl.core.DefaultNativeSecurityManager
MVC_STRICT = FALSE

#资源配置,resource后的属性只限于特定ResourceLoader
RESOURCE_LOADER=org.beetl.core.resource.ClasspathResourceLoader
#classpath 根路径
#RESOURCE.root= /templates/
#是否检测文件变化,开发用true合适,但线上要改为false
RESOURCE.autoCheck= true

5、控制器

Springboot集成beetl模板_第1张图片

6、前端add.html ,放在templates文件夹中

Springboot集成beetl模板_第2张图片

7、运行后的结果

Springboot集成beetl模板_第3张图片

 

总结:

    配置类中的BeetlGroupUtilConfiguration beetlGroupUtilConfiguration = new BeetlGroupUtilConfiguration() ,该工具类创建实例时,并没有对里面的GroupTemplate 属性类进行初始化,需要另外调用一下init()初始化方法。

    html文件(也可以自己定义后缀通过beetlSpringViewResolver.setSuffix(".html"))层级目录 :配置文件中的根路径配置 #RESOURCE.root= /templates/ 和 配置类中的beetlSpringViewResolver.setPrefix("/templates/") ,这两个路径拼接起来在加上html文件名,就应该是该 .htnl文件 的相对路径。

 

 

你可能感兴趣的:(Springboot集成beetl模板)