ReflectionException: There is no getter for property named ‘XXX异常原因和解决

异常出现原因

在使用通用mapper时所有的数据映射和修改都是根据你所创建的实体类中的get和set方法。
而出现这种异常的情况,大多数就是在你使用实体类对象来接受前端封装传回数据后,对数据在传入数据库时进行操作导致的。

此处就是利用实体对象接受的前端数据

以下是实体类的属性
在这里插入图片描述

而在对数据库进行操作时如果我们如下图所示
在这里插入图片描述
此时就会发生异常
在这里插入图片描述

异常的解决

出现这种异常那的根本原因就是,在对数据库操作时,执行sql语句的时候,程序无法找到要注入的属性在哪里,比如实体对象中的是videoName,而在操作时xml文件中的sql语句写的是
video_name = #{videoname}
此时程序无法找到videoname到底来自哪里,他的值是什么,因为我们在xml中的参数为 parameterType=“com.cn.fate.Bean.VideoInfo”
是一个实体类,但是这个实体中没有videoname属性,所以出现这种异常,所以此处所有参数应该写成实体类中的属性,且要和实体类中属性的名称保持一致。
正确图片如下
在这里插入图片描述

总结

保证sql语句中的参数和实体参数的属性名称一样即可解决该问题

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值