Illegal overloaded getter method with ambiguous type for property

Exception in thread "main" org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: Illegal overloaded getter method with ambiguous type for property tradeType in class class com.honzh.biz.database.entity.OrderBase. This breaks the JavaBeans specification and can cause unpredicatble results.
解决办法:
以上问题是因为mybatis内部在进行Java反射的时候出现的问题,那么为什么会出现,因为Java会把Boolean类型的getter方法默认为is打头的或者是get打头的,如

    public boolean isTradeType() {  
          
    }  
      
    public boolean getTradeType() {  
          
    }  

以上两种方法,Java都会认为是bean的属性封装,那么在反射的时候,Java就不知道该get哪个tradeType了,如果解决呢,如果你的类中有

    public Integer getTradeType() {  
        return tradeType;  
    }  
      
    public boolean isTradeType() {  
        if (StringUtils.isEmpty(getTradeType()) || (!isBuy() && isSale())) {  
            return false;  
        }  
        return true;  
    }  

类似以上的方法存在,那么就要注意了,把boolean 的isTradeType方法重命名一下,如换成typeOfTradeType这样就好了,Java在反射的时候就不会区分不清是什么属性。

原文: http://blog.csdn.net/qing_gee/article/details/44307827

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,269评论 19 139
  • 1. 简介 1.1 什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的...
    笨鸟慢飞阅读 5,855评论 0 4
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,839评论 18 399
  • 昨天去上英文课,学到一个词——Glory Days。这个词可以翻译成青葱岁月。 我的青葱岁月应该是高中的那三年。我...
    等风来Lris阅读 392评论 0 0
  • 都说销售,成交才是开始,这话一点也不错 欢迎加入内部交流圈子QQ群【225332768】(验证:jx...
    劲祥阅读 367评论 0 0