# 开发过程中学会如何排错

小伙伴们在跟敲我们教程的时候,会遇到一些各种各样的问题,有很多小伙伴可能是初学者,会遇到很多非常基础的问题不知道如何排查解决,比如最典型的就是:武哥我在做xxx的时候系统异常了,请问怎么解决,然后贴一个系统异常的提示截图,哈哈,这种神仙都不知道你具体出了啥问题。

所以我发一个帖来跟大家分享一下常见的问题该如何排查以及有问题该如何提问才能被其他小伙伴快速get。首先我们说下常见问题,大家以后遇到后可以按照我说的来排查。再结合 遇到问题要学会如何提问,基本上就能快速成长起来。

# 一、前端页面出现404了

前端F12看到有404这种报错的话,首先你静下心来,看下它描述的是哪个接口。这种报错一般有如下两种可能:

1)报错提示的那个地址(url)写错了,后台没有这个接口
2)你后台有这个接口,但是后台忘了重启服务了,这样的话前端也找不到的
3)可能这个url是原来存在数据库的,里面有端口号,但是你后来把程序端口号改了,也会导致404

所以404的时候,按F12看看具体你是哪个接口,然后去解决一下即可。

# 二、前端页面出现405了

这个说明你某个接口请求的方式写错了,比如后台controller里这个接口是post请求(@PostMapping),但是你前端调用的时候,用的却是get请求。所以报405的时候,请F12看下具体是哪个接口405了,然后修改一下调用方式即可。

# 三、系统异常了(或报500)

这个是最频繁的问题,大家一定谨记,报500或者报系统异常了,那一定是后台Java代码报错了,这时候你需要做的是,第一时间去后台控制台那边看下报了什么错,有些小伙伴不知道控制台里哪些才是报错,截图的五花八门,一般控制台那边,error开头的都是报错,其他不是,例如:

上面那个一看就是sql语句写的有点问题,有些是空指针异常(NullPointException),你们也要定位到对应的那一行,然后在该行打个断点,走到这里,看看到底哪个变量是null,然后再去排查为什么过来的是null,从controller接口入口一步步过来看看哪里出问题了。

# 四、不报错,但数据不对或者出不来

啥都不报错,这种情况下,一定是你代码逻辑写的有问题,它可以正常运行,但是逻辑不对,数据不对。这时候你需要学会debug,前端和后端都可以打断点。

前端你可以在js代码里加上 debugger,然后把页面F12打开,它运行的时候就会自动断在你写debugger的地方,F11可以单步调试,看看数据

如果前端debugger不生效,你可以在对应位置用 console.log('xxxx') 来在控制台打印一下信息来排查。后端断点就不用我多说了吧,debug模式启动项目,在代码左侧就可以直接点一下出现断点。

然后排查的过程,先看前端调用数据有没有正常到后端,然后数据有没有正常传过来,如果正常,那一定是后端的问题,再排查。如果接口接收到的数据不对,那一定是前端那边的问题。

# 五、数据库SQL导入错误

这种问题啊,你首先得拉到最上面看下报错,请不要再这样贴个图了,没人知道。但是星球里,出现这个问题的大概率原因,是你数据库没创建,不信你拉上去看看就知道了。所以要先创建一个数据库,再在这个数据库上面右键->导入。

# 六、什么Network Error

你后台springboot项目工程,确定已经启动了吗???所以前端、后端两个服务都要启动的,遇到这个问题基本上都是后端的Springboot工程压根就没启动呢!

后面看到其他的再补充……

希望大家能在报错、排错中,快速成长起来!

上次更新: 7/18/2024,