使用mybatis传入参数,如果参数类型是String ,InInteger,等这些时。如果用他的<if>标签判断该参数是否为空,通常会爆There is no getter for property named 'id' in 'class java.lang.Integer异常。
解决办法1:
在接口中该方法的参数前加上@Param("参数名")注解。
例如:StarBeauticianRecord selectByPrimaryKey(@Param(value="id")Integer id);
解决办法2:
在 xml文件中应该使用_parameter来代替参数名。
例如:
<select id="findUserById" parameterType="int" resultType="user">
select * from user
<where>
<if test=" _parameter != null ">
id=#{_parameter}
</if>
</where>
</select>转自:http://blog.youkuaiyun.com/qq_33866778/article/details/53744533?locationNum=12&fps=1
本文介绍了在使用MyBatis框架进行数据库操作时,如何正确处理参数为空的情况,特别是针对基本类型的参数。提供了两种解决方案:一是通过@Param注解明确指定参数名;二是直接在XML映射文件中使用_parameter代替具体的参数名。
3120

被折叠的 条评论
为什么被折叠?



