ibatis.reflection.ReflectionException: There is no getter for property named ‘id‘ in ‘class java.lan

mybatis的mapper.xml 中如果parameterType = “java.long.Long”
也就是mapper接口中的方法是按照单个参数去传递的:

1. mapper 接口

    CtContractVo selectContractDetialById(Long id);

2. mapper.xml
注意作为where条件的时候不能加<if>标签
and c.id = #{id, jdbcType=BIGINT}

  <select id="selectContractDetialById" parameterType="java.lang.Long" resultMap="ContractResultMap">
    select
    c.id, c. name, c. order_id, c. money, c. status, c. apply_time, c. expiry_time, c. tenant_id, c. update_user,
    c.first_party, c. second_party, c. description, c. path, c. content, c. images, c. delete_flag,
    o.order_name, o.money order_money
    from
    ct_contract c
    left join ct_order o
    on c.order_id = o.id
    where 1=1
    and c.id = #{id, jdbcType=BIGINT}
    and c.delete_flag = 0
  </select>

如果加上了,会报错:
Caused by: org.apache.ibatis.reflection.ReflectionException: There is no getter for property named ‘id’ in ‘class java.lang.Long’

<if test="id != null">
	and c.id = #{id, jdbcType=BIGINT}
</if>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值