我通过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页面。为什么呢?
答案 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批注,只需删除此批注对我有用。