欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

程序员文章站 2022-07-15 13:20:38
...

1、报错信息

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

Caused by: org.apache.ibatis.reflection.ReflectionException: There is no setter for property named 'roleId' in 'class com.ken.shoopingboot.bean.Staff'

 2、不懂英文的可以用百度翻译、有道翻译、QQ在线翻译(快捷键Ctrl+Alt+O)等工具帮助翻译

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

 3、原因

从数据库里查询出字段名为roleId的数据,但名为staff的实体类没有相应的roleId属性或roleId的set方法来接收数据,从数据库里查询出来的数据无法存进名为roleId的变量中,导致报错

4、解决办法

第一种:

在相应的mapper.xml文件里写了把列名为roleId的数据存进staff类里的roleId,但忘记在staff类里写roleId变量和set方法了

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

在staff类中声明一个变量,再设置一个set方法 

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

第二种:

把从数据库取出来的数据存进与该类有关联关系的类中,就不用在staff类中声明一个名为roleId的变量了

例:

staff类与role类有关联关系,roleId在role中也存在,所以从数据库查询出来的roleId也可以放进role里的roleId中,就不用在staff类中重新声明一个roleId了 

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘

 There is no setter for property named ‘xxx‘ in ‘class com.xxx.xxx.xxx.xxx‘