您的位置:首页 > 编程语言 > Java开发

Mybatis异常There is no getter for property named 'XXX' in 'class java.lang.String

2017-11-17 16:03 706 查看

Mybatis异常There is no getter for property named ‘XXX’ in ‘class java.lang.String’

问题:当入参为 string类型时 (包括java.lang.String.)

我们使用#{xxx}引入参数.会抛异常There is no getter for property named ‘XXX’ in ‘class java.lang.String’

<select id="getBookingCount" resultType="int" parameterType="string">

select count(*) from TB_EMPC_BOOKING_ORDER T

where (t.state = '1' or t.state = '2')

and t.appointmenttime = #{state}

</select>


解决方法一:把#{xxx}修改为 #{_parameter} 即可

<select id="getBookingCount" resultType="int" parameterType="string">

select count(*) from TB_EMPC_BOOKING_ORDER T

where (t.state = '1' or t.state = '2')

and t.appointmenttime = #{_parameter}

</select>


解决方法二:可以在方法中提前定义:

public int  methodName(@Param(value="state") String state ){

  ...

}


原因:Mybatis默认采用ONGL解析参数,所以会自动采用对象树的形式取 string.xxx 值,如果没在在方法中定义,则会抛异常报错。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mybatis 异常
相关文章推荐