mabatis 报There is no getter for property named 'id' in 'class java.lang.String'

背景

我在前端通过地址直接拼参数的形式请求后台

mabatis 报There is no getter for property named 'id' in 'class java.lang.String'

错误提示

“class java.lang.String”中没有名为“id”的属性的getter

mabatis 报There is no getter for property named 'id' in 'class java.lang.String'

分析和解决

Mybatis默认采用ONGL解析参数,所以会自动采用对象树的形式取string.id值,引起错误。

我代码报错的原因我传递的参数是String类型,在SQL语句中进行判断的时候要把<if>里id这个参数改成_parameter 。

错误写法

mabatis 报There is no getter for property named 'id' in 'class java.lang.String'

正确写法

mabatis 报There is no getter for property named 'id' in 'class java.lang.String'