MyBatis中动态sql的实现方法示例
动态sql即对sql语句进行灵活操作,通过表达式进行判断,对sql进行灵活拼接、组装。拼接的时候要确保不能忘了必要的空格,还要注意省掉列名列表最后的逗号。使用Oracle的序列、mySQL的函数生成Id。利用动态 SQL 这一特性可以彻底摆脱这种痛苦。通常使用动态 SQL 不可能是独立的一部分,MyBatis 当然使用一种强大的动态 SQL 语言来改进这种情形,这种语言可以被用在任意的 SQL 映射语句中。动态 SQL 元素和使用 JSTL 或其他类似基于 XML 的文本处理器相似。MyBatis 采用功能强大的基于 OGNL 的表达式来消除其他元素。那么在测试代码中,我们可以故意的将user.sex不赋初值,就可以看到查询的结果是不一样的。mybatis使用的是foreach解析。
用户评论