我使用的是Spring Boot 1.2.7和Thymeleaf .
所有的html页面都在 src/main/resource/templates
文件夹中,当我在控制器中说 return "<viewName>"
时,一切正常 .
现在,我想为AngularJS使用不同的文件夹结构 .
想将页面移动到其他文件夹,比如 webapps/pages
.
尝试配置解析器如下,
@Configuration
public class MvcConfig extends WebMvcConfigurerAdapter {
@Bean
public ServletContextTemplateResolver getViewResolver() {
ServletContextTemplateResolver resolver = new ServletContextTemplateResolver();
resolver.setPrefix("webapps/pages/");
resolver.setSuffix(".html");
resolver.setTemplateMode("LEGACYHTML5");
return resolver;
}
@Override
public void configureDefaultServletHandling(
DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
}
仍然没有工作......我是否缺少任何其他配置或者我不应该在这种情况下使用Thymeleaf?
pom.xml供您参考,
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
</dependencies>
1 回答
如果您不想使用标准配置,可以在
application.properties
(或application.yml
)文件中配置一个TemplateResolver
. 您可以在the docs中找到可用选项列表 .然后为额外的
TemplateResolver
引入一个新的@Configuration
: