Spring Boot - 如何为指定根目录中的多个路由提供一个静态html文件

时间:2016-04-15 05:06:59

标签: java spring spring-mvc spring-boot

我需要为指定根html中的所有路由提供静态(/src/main/resources/static/folder/index.html)文件(as example '/main/\**')。我尝试使用@RequestMapping("/main/**")注释控制器方法,但它仅适用于'/main'路由,而不适用于“/main/foo''/main/foo/bar'等...

那么,我怎么能在春季训练中做到这一点?

2 个答案:

答案 0 :(得分:4)

我找到了这个解决方案:

// application.properties
spring.mvc.view.prefix=/
spring.mvc.view.suffix=.html


// Controller for index.html
@Controller
public class IndexController {

    @RequestMapping({"/login", "/main/**"})
    public String index() {
        return "index";
    }
}

答案 1 :(得分:1)

您必须添加/编辑配置对象。

这是我们的方法:

@Configuration
@EnableWebMvc
public class WebConfiguration extends WebMvcConfigurerAdapter {
    public static final String INDEX_VIEW_NAME = "forward:index.html";



    public void addViewControllers(final ViewControllerRegistry registry) {
        registry.addViewController("/").setViewName(INDEX_VIEW_NAME);
        registry.addViewController("/login").setViewName(INDEX_VIEW_NAME);
        registry.addViewController("/logout").setViewName(INDEX_VIEW_NAME);
    }
}