使用@Data注解遇到的问题以及一些感想。

在项目中使用@Data注解时遇到实体类字段默认值问题,新增操作时默认为0的字段在数据库中变为null。通过检查数据库默认值、手动添加get、set方法并采用控制变量法排查,发现是缺少get、set方法导致。最终解决后反思找bug的方法和保持初心的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 关于@Data注解相信都不陌生,但最近在使用时有碰上一些问题。
    在这里插入图片描述
    在一个项目中的一个实体类中使用了该注解,没有手动生成get、set方法,在对该实体类进行新增操作时某些字段是默认为0的,在做新增时发现页面没有加载,我去查看数据库发现数据库是成功添加了的,可是那些本该为0的字段却为null,一开始我想在Controller层直接为这些字段set默认值算了~~(后来仔细一想不太对,感觉这法子太被动了,我向来是主动出击的人,嘿嘿)~~

  • 于是我在想是不是数据库没有设默认值,我就去把字段默认值设为0
    在这里插入图片描述

  • 发现没啥用,再从头把代码捋了一遍,看到实体类的时候在想会不会是没有手动生成 get、set方法(ps:我就想偷个懒而已啊,太难了~),于是我不用@Data注解,手动生成 get、set方法,Controller层那些字段也没有set,就改了这一个,控制变量法yyds,物理老师诚不欺我,大家找bug也可以这么干,一点一点排除!最后运行,成功,数据库里那些没有set的字段也成功添加为0
    在这里插入图片描述

  • 后续,我有换成了@Data注解,结果它好了。好家伙,小丑竟是我自己!!!

在这里插入图片描述
由于改的太多,现在我也搞不懂是哪里出问题了,大概率是数据库的问题。不过这还没有结束,我在想我有没有钻牛角尖,毕竟bug已经解决了,我还在想为什么,强迫症?但我知道我的目的不是这个,我已经偏航了,所以我把标题改了,和追女孩一样,有些人追着追着就忘记了自己的目的,一味的化身为究极舔🐱‍👓,时常回头看看,自己有没有偏离初心,在这个快速的时代显得尤为重要。当然今后有空或是再次遇到相似的问题我会在来想想,有大佬知道的还望指点迷津,不吝赐教,谢谢了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值