文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
5.6 test 的属性
test 的属性用于条件判断的语句中,它在 MyBatis 中广泛使用。它的作用相当于判断真假。在大部分的场景中我们都是用它判断空和非空。有时候我们需要判断字符串、数字和枚举等。所以十分有必要讨论一下它的用法。通过 5.2 节对 if 元素的介绍,我们知道了如何判断非空。但是如何用 if 语句判断字符串呢?我们对代码进行下面的测试,如代码清单 5-7 所示。
代码清单 5-7:测试 test 属性判断
<select id="getRoleTest" parameterType="string" resultMap = "roleResultMap"> select role_no, role_name, note from t_role <if test="type = 'Y'"> where 1=1 </if> </select>
把 type = Y 传递给这条 SQL,我们发现程序自动加入了 where 1=1。
换句话说,这条语句判定成功了。在旧的版本里面我们往往需要加入 toString(),新的版本已经解决了这个问题。同样的它可以给我们判断数值型的参数。对于枚举而言,取决于你使用何种 typeHandler,这些需要参考第 3 章关于枚举 typeHandler 的介绍。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论