MyBatis 动态SQL

2025-12-17 19:36:12

1、OGNL( Object Graph Navigation Language )对象图导航语言,这是一种强大的

表达式语言,通过它可以非常方便的来操作对象属性。 类似于我们的EL,SpEL等

MyBatis 动态SQL

2、if  where

1)If用于完成简单的判断.

2)Where用于解决SQL语句中where关键字以及条件中第一个and或者or的问题

MyBatis 动态SQL

3、trim

1)Trim 可以在条件判断完的SQL语句前后 添加或者去掉指定的字符

prefix: 添加前缀

prefixOverrides: 去掉前缀

suffix: 添加后缀

suffixOverrides: 去掉后缀

MyBatis 动态SQL

4、set

1)set 主要是用于解决修改操作中SQL语句中可能多出逗号的问题

MyBatis 动态SQL

5、choose(when、otherwise)

1)choose 主要是用于分支判断,类似于java中的switch case,只会满足所有分支中的一个

MyBatis 动态SQL

6、foreach

1)foreach 主要用户循环迭代

collection: 要迭代的集合

item: 当前从集合中迭代出的元素

open: 开始字符

close:结束字符

separator: 元素与元素之间的分隔符

index:

         迭代的是List集合: index表示的当前元素的下标

                  迭代的Map集合:  index表示的当前元素的key

MyBatis 动态SQL

7、sql

1)sql 标签是用于抽取可重用的sql片段,将相同的,使用频繁的SQL片段抽取出来,单独定义,方便多次引用.

2)抽取SQL: 

MyBatis 动态SQL

8、3)引用SQL:

MyBatis 动态SQL

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢