目录
问题现象:
今天在项目中遇到了一个小问题,记录一下,问题如下图:
问题分析:
这里报错信息是说:发生了ReflectionException异常,原因是这个名为'quUsedPercentage'没有setter方法.
也许有很多伙伴也有遇到过类似的问题,而且很可能和我接下来的经历一模一样:
一般来说,靠下面解决方法的第一点基本都不能解决该问题,因为写完实体类的属性,随手加上getter/setter和toString();可以说是大部分程序员都会做的事,尤其是使用IDEA的伙伴们,那更是5秒的时间就可以用快捷键搞定了.
所以如果是第一点就能解决的话,那你真的需要面壁思过了.
因此,我也写了getter/setter方法,为了更加确定,我还故意重新生成了一次getter/setter方法.
然而结果还是不行,那么到底该如何解决这个问题呢?
在IDEA里面有个全项目搜索的快捷键(我的是 ctrl + h),另外说明一下,ctrl + f 是当前文件的全文检索;
经常使用IDEA的小伙伴肯定对这些功能不陌生;这里我们使用全项目检索,搜索出问题的那个属性名 quUsedPercentage,然后就能发生问题所在了,
检索文件里面没有我们刚才用到的那个实体类,也就是说这个关键词,就没有在实体类中出现过.
由此可知,是属性的命名出问题了.
我去到实体类,使用 ctrl + f 的全文检索功能,发现确实找不到这个关键词,于是我就手动就定位了.
发现实体类中这个属性的命名是: qxUsedPercentage
乍一看真的看不出来,仔细看的话,就会发现:
开头那里是qx,而报错的是qu.
解决方法:
1.首先去查看这个报错的属性,它所在的实体类;看看是否有写入该属性的getter/setter方法.
2.将实体类中的qxUsedPercentage改为quUsedPercentage,则重新生成getter/setter方法.
问题解决!!!!!!