为什么spring boot工程访问不到 静态资源

才将上篇提到的interceptor中,bean无法自动注入的问题解决后,又出现了无法访问静态资源的问题:
[No mapping found for HTTP request with URI [/index.html] in DispatcherServlet with name 'dispatcherServlet'],

解决方法参考:
http://blog.csdn.net/leegoowang/article/details/78591086

这里写图片描述
这就郁闷了,找了半天,大家工程都这样构建,没有问题啊,然后各种配置,各种倒腾,回头发现如下描述是很有用得:

Spring Boot 默认将 /** 所有访问映射到以下目录:
    classpath:/static
    classpath:/public
    classpath:/resources
    classpath:/META-INF/resources

原来springboot中得springmvc模块会默认这些地方进行扫描,如果找到,就会直接响应。
那么现在问题清楚了,肯定是mvc得配置有问题,工程中哪些地方我单独加了springmvc呢,那就只有一图中,添加了@EnableWebMvc,这个标签启用了Spring MVC的注解支持,使得spring boot中的注解默认转化为Spring MVC了,也就是说,要想使用静态资源,得按照springmvc的方式去进行资源配置。 好得,问题知道,就知道怎么解决了,方法很简单,取消掉这个注解,再启动,OK了,静态资源能够正常访问到了,至于springmvc怎么配置,想必大家都知道了,就不在复述了。

本站公众号
   欢迎关注本站公众号,获取更多程序园信息
开发小院