事情起因
作为一名才毕业的程序员,想提高自己的技术,就找到了Guide哥的开源项目,然后跟着他的SpringBoot异常文章学到了自定义异常,迫不及待的用到了自己的测试项目中,简单测试后发现没问题,就感觉万事大吉。接下来就弄到实际开发系统中了,这时候问题就出现了
程序出错表象
这是我第一次用Mybaties Generator框架来搭建项目,之后写一个controller来测试,发现数据库只能查询和删除,进行增加和更新操作,程序就停在那里了。多次以为时生成器生成的代码存在问题,各种修改配置文件,重新生成代码,最后自己手写仍然存在该问题
内在原因
搜索了一天,没找到原因,最后debug模式下一点点过的才发现好像是程序抛出异常了,异常原因是建表时忘记把id字段设置为自增长字段了,导致mysql报错Field ‘id’ doesn’t have a default value,但是由于我已经自定义了一个异常处理类(其实是个残次品),把抛出的异常拦截了,所以就导致了程序一进行插入和更新就阻塞的表象。有了报错信息就很容易定位并解决问题了,接下来把数据库表的id改为自增长字段就行了