如何在spring-boot中提供静态html内容页面

时间:2015-08-07 11:14:51

标签: java spring spring-mvc spring-boot

我通过spring-boot启动嵌入式tomcat,并希望在正在运行的应用程序中提供静态index.html页面。

但以下不起作用:

@SpringBootApplication
public class HMyApplication {
    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class, args);
    }
}


@RestController 
public class HomeContoller {
    @RequestMapping("/")
    public String index() {
        return "index";
    }
}

src/main/resources/static/index.html

结果:当我拨打localhost:8080时,我只看到" index"这个词,但不是我的html页面。为什么呢?

4 个答案:

答案 0 :(得分:16)

我的错:我有一个额外的@EnableWebMvc注释课程。这在某种程度上搞砸了spring-boot自动配置。我删除了它,现在它可以返回index.html

答案 1 :(得分:8)

对我来说这很有效,我相信有更好的方法(比如没有.html)。

@RequestMapping("/")
public String index() {
    return "index.html";
}

答案 2 :(得分:0)

您可以使用ModelAndView来在Spring Boot中提供静态HTML内容。

@RequestMapping("/")
public ModelAndView home()
{
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.setViewName("index");
    return modelAndView;
}

application.properties:-

spring.mvc.view.suffix = .html

HTML文件:-src / main / resources / static / index.html

答案 3 :(得分:0)

那是因为@RestController批注,只需删除此批注对我有用。