【SpringBoot】WebMvcConfigurer实现类不被加载(o.s.web.servlet.PageNotFound : No mapping for GET)的问题解决

运行springboot项目的时候发现,明明访问的是一个页面,但是却被当作一个请求去处理了。
那么可以考虑到应该是资源文件没有被加载,或者说资源文件的映射没有被加载。
所以问题肯定可以缩小到是WebMvcConfigurer的实现类或者WebMvcConfigurationSupport的子类中的加载资源文件的方法没有被执行。
【SpringBoot】WebMvcConfigurer实现类不被加载(o.s.web.servlet.PageNotFound : No mapping for GET)的问题解决_第1张图片
在这里插入图片描述
【SpringBoot】WebMvcConfigurer实现类不被加载(o.s.web.servlet.PageNotFound : No mapping for GET)的问题解决_第2张图片
那么我查看了我之前其效果的代码,发现原因是因为:
如果你已经有一个配置类继承了WebMvcConfigurationSupport,那么你实现WebMvcConfigurer的类就不会被加载了。
这也就是为什么明明我写了资源文件映射却没有加载资源文件的原因。
从而导致我的页面访问请求都被当作一个Controller层请求而被处理了。
所以解决方法就是,把对Web的配置都写到同一个类中即可,然后注释掉WebMvcConfigurationSupport或者WebMvcConfigurer其中之一。
【SpringBoot】WebMvcConfigurer实现类不被加载(o.s.web.servlet.PageNotFound : No mapping for GET)的问题解决_第3张图片
【SpringBoot】WebMvcConfigurer实现类不被加载(o.s.web.servlet.PageNotFound : No mapping for GET)的问题解决_第4张图片
如下是我最后的配置文件
【SpringBoot】WebMvcConfigurer实现类不被加载(o.s.web.servlet.PageNotFound : No mapping for GET)的问题解决_第5张图片

你可能感兴趣的:(java,spring,boot,java,spring)