SpringBoot:竟然has no explicit mapping for /error

异常:This application has no explicit mapping for /error, so you are seeing this as a fallback.

 

出现这个异常说明了跳转页面的url无对应的值.

原因1:

Application启动类的位置不对.要将Application类放在最外侧,即包含所有子包 
原因:spring-boot会自动加载启动类所在包下及其子包下的所有组件.

原因2:

在springboot的配置文件:application.yml或application.properties中关于视图解析器的配置问题: 
当pom文件下的spring-boot-starter-paren版本高时使用: 
spring.mvc.view.prefix/spring.mvc.view.suffix 
当pom文件下的spring-boot-starter-paren版本低时使用: 
spring.view.prefix/spring.view.suffix

原因3:

控制器的URL路径书写问题 
@RequestMapping(“xxxxxxxxxxxxxx”) 
实际访问的路径与”xxx”不符合.

 

 

 

启动类放的位置不对,启动类所在的package必需要包含Controller所在的package,当然直接把启动类放在项目最外层package中就最稳妥不过了。而后我们从头开始,重现问题及处理办法:

都说SpringBoot简单,果然简单,这样就可以启动了:

注意启动类所在包目录

增加必要的依赖,连application.properties都不需要即可以启动了:

最喜欢看见started

然而在访问简单的controller接口的时候却出了错This application has no explicit mapping for /error, so you are seeing this as a fallback.:

竟然找不到mapping

大部分人都说这种情况通常是因为没有这个mapping对应的接口,然而我分明就是有,而且一定不可可以写错路径:

这都可以找不到?

后来终于有一个人猜对了起因:启动类放的位置不对,启动类所在的package必需要包含Controller所在的package。

而后我改了下启动类StartWeeds.java的位置,果然正常了:

注意启动类所在包目录

重新启动并访问接口:

问题处理!

Thats All!

posted @ 2018-11-12 11:02  panchanggui  阅读(121280)  评论(0编辑  收藏  举报