解决MyBatis报错:There is no getter for property named'Xxx'in'class xxx.xxx.Xxx'
作者:温柔哥`
这篇文章主要介绍了解决MyBatis报错:There is no getter for property named'Xxx'in'class xxx.xxx.Xxx'问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
问题
org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'ProName' in 'class com.smbms.pojo.Provider'
### Cause: org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'ProName' in 'class com.smbms.pojo.Provider'
解决方法
这个错误提示你的实体类的某个属性没有get方法那么你的
问题可能有以下三种
- 1.在实体类中的该属性名字写错了
- 2.在实体类中的该属性没有写get方法
- 3.在xxxMapper.xml文件中的该属性名字写错了
下面是我的错误之处
大家可以看到注释的部分为我之前的写错名字的属性,注释下面那行为修改后的
<select id="queryByIdAndProName" resultType="com.smbms.pojo.Provider"> select * from smbms_provider <where> <if test="id != null and id != ''"> and id = #{id} </if> <!-- <if test="ProName != null and id != ''">--> <if test="proName != null and id != ''"> and proName like concat('%',#{proName},'%') </if> </where> </select>
再次运行之后的结果就是正确的了
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。