Caused by:org.apach.ibatis.ognl.NoSuchPropertyException:xx.xx.xx

关于mybatis报错:找不到某个属性的问题

  • 1、前言
  • 2、问题出现的场景
  • 3、解决办法

1、前言

本人是在做公司一个“古董项目”的时候遇到的问题,其中造成该错误的大部分原因也是因为自己的操作失误,最后步步调试终于找出了问题的原因。做个记录有个印象,也给以后自己解决问题的思路提供一些借鉴。

2、问题出现的场景

Caused by:org.apach.ibatis.ognl.NoSuchPropertyException:xx.xx.xx_第1张图片

  • 很简单的操作,添加一条数据进行异步显示;前后端逻辑没有任何问题,因为这部分代码完成可以自动生成,也进行测试过。
  • 但是后来我因为需求在数据库中加了一个字段——序号(order),后来用工具自动生成了代码,但是之后用order遇到了一些问题因为和order by语句中的单词类似,我就又改成了ordernum,添加完之后,因为又要生成太麻烦,我就手动去改实体类(Entity)、mapper.xml,以及页面上要用到的关于这个属性的一些标签或者sql语句我都改了,这些是常识对吧!
  • 于是之后进行测试,点击保存后,数据成功插入,但是页面连之前显示的数据都不在了,重新刷新整个页面又出来了,但是对应的序号不显示,我又试了几次,结果都不对,刚开始一直因为是前端问题,但是F12看了下前端没有任何错误。最后在日志中看到了标题报错的错误情况。因此这肯定是和实体类或者数据库字段的问题

3、解决办法

关于页面或者实体类中的属性我基本上该改的都改了,但是还有一个地方,get和set方法,之前自动生成的是getOrder和setOrder,虽然其中返回的类容是对的,但是对于mybatis来说他是找不到的,之前在学习mybatis的时候,知道又很多注入方式,其中一种就是get和set注入,get和set之后跟的就是对应的属性名,因为像之前那样就只找得到Order而找不到Ordernum,所以报没有该属性的异常(NoSuchPropertyException)

你可能感兴趣的:(mybatis,mybatis,get/set,Exception,NosuchProperty,mysql)