【Java】SpringBoot集成freemarker|这下总该学会了吧
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer;
import java.util.Properties;
@Configuration
public class FreemarkerConfig {
@Bean
public FreeMarkerConfigurer freeMarkerConfigurer() {
FreeMarkerConfigurer freeMarkerConfigurer = new FreeMarkerConfigurer();
freeMarkerConfigurer.setTemplateLoaderPath("/WEB-INF/freemarker/");
Properties properties = new Properties();
properties.setProperty("default_encoding", "UTF-8");
freeMarkerConfigurer.setFreemarkerSettings(properties);
return freeMarkerConfigurer;
}
@Bean
public WebMvcConfigurer webMvcConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addViewController("/").setViewName("index.ftl");
}
};
}
}
这段代码定义了一个配置类FreemarkerConfig
,其中包含了FreeMarkerConfigurer
的Bean配置,以及一个实现了WebMvcConfigurer
接口的Bean,用于处理视图控制器的配置。这样,当访问根路径/
时,应用会渲染index.ftl
这个FreeMarker模板。这个模板应该位于/WEB-INF/freemarker/
目录下,并且使用UTF-8编码。
评论已关闭