spring Boot默认就是使用thymeleaf模板引擎的,这里我们把它换掉,用freemarker作为我们前台页面模板引擎。
1.Maven依赖
Spring Boot同样提供了集成freemarker的starter,引入即可。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
2.配置
这里我们采用Java Config的形式进行配置。
新建MvcConfigurer类,继承自WebMvcConfigurerAdapter类
自定义viewResolver方法,返回FreeMarkerViewResolver。
自定义freemarkerConfig方法,通过FreeMarkerConfigurationFactory工厂类进行freemarker的默认配置,主要配置setTemplateLoaderPaths的模板根路径,这里需要注意的是,freemarker对null值是报错处理的,这里我们通过
freemarker.template.Configuration configuration = factory.createConfiguration();
configuration.setClassicCompatible(true);
result.setConfiguration(configuration);
几行代码将null值做空处理,防止页面报错。
实现addResourceH