mybatis采用模糊查询测试时,报错There is no getter for property named 'dname' in 'class java.lang.String',检查代码,个人报错原因是sql写法问题,应将'%${dname}%'改为'%${value}%'如下:
错误写法:
<select id="findUserByLikeName" parameterType="String" resultType="ora.hjb.po.User">
select * from userInfo where dname like '%${dname}%'
</select>
正确写法:
<select id="findUserByLikeName" parameterType="String" resultType="ora.hjb.po.User">
select * from userInfo where dname like '%${value}%'
</select>
原因:${value}:接收输入参数的内容,如果传入类型是简单参数类型,${}中只能使用value,不能是'%${dname}%',同时需要注意的是,采用${}时,表示拼接sql串,将接收到参数的内容不加任何修饰拼接在sql中,安全隐患,使用${}拼接sql,会引起sql注入。