Spring Boot启动项目发生web.servlet.PageNotFound: No mapping for GET /

提交请求时错误信息为:

2019-07-12 16:19:11.228  INFO 9532 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2019-07-12 16:19:11.229  INFO 9532 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2019-07-12 16:19:11.238  INFO 9532 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 9 ms
2019-07-12 16:19:11.257  WARN 9532 --- [nio-8080-exec-1] o.s.web.servlet.PageNotFound             : No mapping for GET /

 

问题原因为

  • 因为是加了拦截器后才反生这样情况,应该是拦截器没有能够成功加载资源文件

我自己的拦截器为

@Configuration
public class MyMvcConfig extends WebMvcConfigurationSupport {

    /**
     * 拦截某个请求跳转固定位置
     *
     * @param registry
     */
    @Override
    protected void addViewControllers(ViewControllerRegistry registry) {
        //super.addViewControllers(registry);
        registry.addViewController("/nihao").setViewName("success");
    }
}

 

解决办法如下

但是这种方法不推荐使用

@Configuration
public class MyMvcConfig extends WebMvcConfigurerAdapter {

    /**
     * 拦截某个请求跳转固定位置
     *
     * @param registry
     */
    @Override
    protected void addViewControllers(ViewControllerRegistry registry) {
        //super.addViewControllers(registry);
        registry.addViewController("/nihao").setViewName("success");
    }
}
  • extends WebMvcConfigurerAdapter 类,相当于覆盖了@EnableAutoConfiguration里的所有方法,每个方法都需要重写,比如,若不实现方法addResourceHandlers(),则会导致静态资源无法访问

 

spring boot官方推荐实现 WebMvcConfigurer 这个接口具体使用如下

/* Configuration -->标识这个类是 配置类
 * spring 5抛弃了WebMvcConfigurerAdapter  使用WebMvcConfigurationSupport代替了它
 */
@Configuration
public class MyMvcConfig implements WebMvcConfigurer {

    /**
     * 拦截某个请求跳转固定位置
     *
     * @param registry
     */
    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        //super.addViewControllers(registry);
        registry.addViewController("/nihao").setViewName("success");
    }


}
  • implements WebMvcConfigurer 更加简单方便,不容易出现意料之外的bug

 

 

入了spring boot 各种细节问题 都要注意否则就会出现错误

你可能感兴趣的:(SpringBoot,SpringBoot学习笔记,No,mapping,for,GET,spring,boot)