Mybatis动态SQL

MyBatis目前动态SQL支持一下几种标签
if 判断语句
choose(when otherwise) 相当于JAVA中的if else
trim(where , set ) 辅助元素 用来处理sql拼接问题
foreach 循环语句 批量操作
bind 创建一个变量 并绑定到上下中 用于兼容不用的数据库,防止SQL注入等
choose 举例

<choose>
	<when test="studentId != null">
	</when>
	<otherwise>
	and 1=2
	</otherwise>
<choose>

where 标签 使用trim 替换

<trim prefix="where" prefixOverrides="AND |OR">
</trim>

trim 标签介绍

prefix:当trim元素包含有内容时,增加prefix所指定的前缀
prefixOverrides:当trim 元素包含有内容时,去除prefixOverrides指定的前缀
suffix:当trim 元素包含有内容时,增加suffix所指定的后缀
suffixOverrides:当trim元素包含有内容时,去除suffixOverrides指定的后缀
bind 标签举例
<if test="name != null and name != ''">
	<bind name="namelike" value="'%'+name+'%'">
	and name like #{namelike}
</if>

你可能感兴趣的:(spring,boot)