mybatis 基本类型的if条件判断问题 There is no getter for property named 'xxx' in 'class Java.lang.Integer'
2017年03月20日 16:09:16
阅读数:3553
mybatis中if test里判断传参时,如果传参是像int的基本类型,因为它没有getter方法所以会报错:There is no getter for property named 'xxx' in 'class java.lang.Integer'
解决方法:(关于mybatis中基本类型条件判断问题 http://blog.csdn.net/cclovett/article/details/12855505)
1.修改select语句
[html] view plain copy
- <select id="sel_campusinfo" parameterType="int" resultType="Campusinfo">
- select cmpid,cmpname from campusinfo where state!='d' and cmpid!=0
- <if test="_parameter!=0">and cmpid=#{_parameter}</if>
- </select>
参数名全部改为_parameter。
2.不修改sql,只修改接口
接口类:
[java] view plain copy
- Campusinfo sel_campusinfo( int cmpid);
改为:
[java] view plain copy
- Campusinfo sel_campusinfo(@Param(value="cmpid") int cmpid);