MyBatis报错:There is no getter for property named 'class_id' in 'class XXX

本文详细解析了在使用MyBatis框架时遇到的属性映射问题,特别是关于'class_id'字段在实体类、XML配置、SQL语句及数据库字段间不一致导致的错误。作者分享了个人的解决经验,强调了代码细节的重要性。

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

今天在持久层查询数据库时遇到一个错误:There is no getter for property named 'class_id' in 'class XXX


org.mybatis.spring.MyBatisSystemException: nested exception
 is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'class_id' in 'class com.xxx.yyy.zzz'

在网上搜了一下,好多都说

        1. 在mapper文件注入参数的时候添加@Param注解

        2. 或者把#{xxx}修改为#{_parameter};

反正经我本人测试没啥效果,而且把#{xxx}修改为#{_parameter}之后,系统报错又提示:There is no getter for property named '_parameter' in 'class XXX。。。。。。

个人解决办法:

好好检查一下对应的

xml

文件

检查相应字段在对应

        entity实体类属性名称、

        xml文件中resultMap定义的property、

        sql语句column名称、

        数据库column名称是否匹配!!!

这四个地方的定义是否一致。

吃一堑长一智,写代码一定要看仔细。。。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值