记录第N次SQL异常
时间:2022-11-24 10:30:00
文章目录
- 记录第N次SQL异常
-
-
-
- Mapper接口的写法
- Service接口写法
- ServiceImpl实现类写法
- 修改后Mapper接口的写法
- 修改后Service接口写法
- 修改后ServiceImpl实现类写法
- Integer允许返回的对象类型允许返回值null,成功解决问题。
- 在高性能MySQL建议尽量为字段设置默认值,尽量不要让字段值空,避免各种相关值null除非有特殊需要,否则异常。
-
-
- 关于实体类的小bug
- 我的学习论坛
记录第N次SQL异常
最重要的一句话:Mapper method 'com.handsome.dao.BlogMapper.countBlogViews attempted to return null from a method with a primitive return type (int).
期待的值为int类型,返回类型null,对不起,直接GG。为什么要报告这个错误?
Mapper接口的写法
Service接口写法
ServiceImpl实现类写法
期待返回值int基本数据类型,却返回null,因此,导致报错SQL所有应改为对象类型。
修改后Mapper接口的写法
修改后Service接口写法
修改后ServiceImpl实现类写法
Integer允许返回的对象类型允许返回值null,成功解决问题。
在高性能MySQL建议尽量为字段设置默认值,尽量不要让字段值空,避免各种相关值null除非有特殊需要,否则异常。
关于实体类的小bug
如果实体类的属性使用基本数据类型定义,则在数据库中更新,则不会null将值更新到数据库中。int默认定义值 0 ,将更新数据库 0 更新数据库,导致数据统计错误。
应使用实体类int的包装类Integer,Ingeter是int的包装类,int的初值为0,Ingeter的初值为null,更新时,此字段不会更新,以避免bug的出现。
我的学习论坛
HandsomeForum:用Java写学习论坛,打造自己的圈子!(http://huangjunjie.vip:66)
文章链接:http://huangjunjie.vip:66/question/read/ket3qpjghv1yb6mpqc