springboot报错总结
0. 如何解决问题
如何解决问题:
1)保留现场
2)分析问题(基于业务)
2.1)你的业务是什么?
2.2)你的问题是什么
2.3)你报错的代码在什么位置?
2.4)为什么会出现类似问题?
1. NoSuchBeanDefinitionException 错误
NoSuchBeanDefinitionException表示Spring框架没有找到对应的Bean对象配置
解决方案:1)检查GoodsService接口类型是否有对应的实现类
2)检查GoodsService实现类所在包是否正确
3)检查GoodsService实现类是否有Spring特定注解描述,列如:@Service,@component...
注:GoodsService实现类为GoodsServiceImpl,所在的包应在GoodsService的同级或下级目录下
2. 404 错误
404报错表示访问的服务端资源不存在
解决方案:1)检查url是否正确或者是否有对应的controller
2)检查controller的包结构是否正确
3)检查controller是否有spring特定的注解描述,列如@Controller
4)检查Tomcat启动是否OK
注:controller包结构需要在Application.java启动类的下级目录中
3. 500 错误
500报错表示服务端处理失败
解决方案:打开服务端控制台,检查具体异常,例如找causeBy
4. 500错误中的 template might not exist or might not be accessible
template might not exist or might not be accessible表示template可能不存在或者可能无法进入
解决方案:1)检查你goods页面位置是否正确
2)检查你goods页面是否编写正确
3)检查配置文件的前后配置
5. 无法访问此网站
无法访问此网站
解决方案:服务没有重启或者访问端口不正确
6. NullPointerException
NullPointerException表示空指针异常,一般是对象调用方法时,对象为空
解决方案:1)确定出现NullPointerException的行
2)确定当前行中调用方法的对象是否为空,测试方法:断点,日志
3)确定你使用的对象是否使用了spring进行了依赖注入(属性上是否有对应的注解),列如:@Autowired
7. SQLSyntaxErrorException
java.sql.SQLSyntaxErrotException为SQL语法问题
解决方案:要结合业务分析SQL(执行的是什么业务),上图为SQL语句单词写错
8. APPLICATION FAILED TO START 注入失败问题
APPLICATION FAILED TO STATRT为启动失败
图中表示GoodsController中需要一个GoodsService对象,但是spring容器中没有找到,典型的注入失败问题
注入失败问题的解决方案:1)检查GoodsService接口实现类对象包接口
2)检查Goodsservice接口实现类是否交给了spring管理
9. springboot启动 类似乱码问题
启动springboot时,出现上图现象时,点击图中画圆圈的按钮即可
10. APPLICATION FAILED TO START 连接池依赖问题
未能启动,没有嵌入数据源可以配置
解决方案:1)检查连接池依赖是否添加
2)检查url的配置是否正确
11. APPLICATION FAILED TO START Port was already in use
未能启动,端口被占用问题
解决方案:1)查看被占用端口的进程,进行杀进程操作
2)修改启动进程的端口号
12. BindingException 绑定异常问题
BindingException绑定异常
解决方案:1)检查映射文件的配置路径是否正确(Mapper文件)
2)检查接口类全名是否与映射文件namespace的值相同
3)检查方法名与映射文件中的元素id是否相同
4)检查方法参数与sql映射中的参数是否匹配
13. BadSqlGrammarException
BadSqlGrammarException SQL语法问题
解决方案:检查SQL语法,找触发操作的起始位置。
14. 400异常
400异常,要看一下服务端控制台,看看是哪个参数问题
原因:客户端向服务端发送的请求参数不满足服务端的格式要求
解决方案:1)参数个数,例如那些参数必须传值,但没有传值
2)参数格式不正确,例如日期格式:yyyy-MM-dd
15. ConnectException 数据库连接问题
ConnectException 数据库连接不上
解决方案:1)检查连接池的url和账户配置
2)检查本地连接是否可以连接到数据库
3)假如本地连接不上,请检查mysql服务是否启动