mybatis离谱bug乱转类型

作者 : admin 本文共550个字,预计阅读时间需要2分钟 发布时间: 2024-06-10 共4人阅读

字符串传入的参数被转成了int:

@Param("online") String online
			<if test="online == '0'">
				and (heart_time is null or heart_time <![CDATA[  UNIX_TIMESTAMP(SUBDATE(now(),INTERVAL 8 MINUTE)) )
			</if>
			<if test="online == '1'">
				and heart_time is not null and heart_time >= UNIX_TIMESTAMP(SUBDATE(now(),INTERVAL 8 MINUTE))
			</if>

以上代码,既不进online == '0'也不进online == '1',因为被mybatis转成了int类型。
需要这样判断:

			<if test="online == 0">
				and (heart_time is null or heart_time <![CDATA[  UNIX_TIMESTAMP(SUBDATE(now(),INTERVAL 8 MINUTE)) )
			</if>
			<if test="online == 1">
				and heart_time is not null and heart_time >= UNIX_TIMESTAMP(SUBDATE(now(),INTERVAL 8 MINUTE))
			</if>
本站无任何商业行为
个人在线分享 » mybatis离谱bug乱转类型
E-->