mybatis使用${}出错

来源:互联网 发布:淘宝运费险怎么收费的 编辑:程序博客网 时间:2024/05/16 10:58

,使用${}拼接sql报错,

用的是mybatis的mapper,代码如下: 


mapper:定义一个接口,参数类型为String,如果把String类型改为bean或者map都不报错 

public List<UserVo> getUserInfoByStatus(String status); 

xml:把xml文件中的'${status}'改为#{status}也不报错 

<select id="getUserInfoByStatus" resultType="UserVo" parameterType="String"> 
<![CDATA[ 
select * from bp_lvwang_user t where t.homegw = '0' and t.status = '${status}' 
]]> 
</select> 

报错信息: 

Exception in thread "main" org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.reflection.ReflectionException: There is no getter for property named 'status' in 'class java.lang.String' 


解决方法:

有两种解决方法: 
1.public List<UserVo> getUserInfoByStatus(@Param(value="status") String status); 
2.select * from bp_lvwang_user t where t.homegw = '0' and t.status = '${value}'

0 0