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

Mybatis版本:mybatis-3.0.6.jar

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

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

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

select count(*) from TB_EMPC_BOOKING_ORDER T

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

and t.appointmenttime = #{state}

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

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

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

select count(*) from TB_EMPC_BOOKING_ORDER T

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

and t.appointmenttime = #{_parameter}

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

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

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

  ...

}