当前位置: 代码迷 >> 综合 >> Mybatis的xml映射文件的常用标签汇总
  详细解决方案

Mybatis的xml映射文件的常用标签汇总

热度:32   发布时间:2024-02-24 00:30:31.0

一、顶级标签

1、sql – 可被其他语句引用的可重用语句块

<sql id="valid"> where valid = 1 </sql><select id = 'queryUser'>select * from user <include refid = 'valid'></include>

2、insert – 映射插入语句

<insert id = "saveUser">insert into User (id,name,sex) values (#{id},#{name},#{sex})<insert>

3、update – 映射更新语句

<update id="updateUser">update User setname = #{name},sex= #{sex}where id = #{id}
</update>

4、delete – 映射删除语句

<delete id="deleteUser">delete from User where id = #{id}
</delete>

二、动态sql标签

1、if

<select id="findUserByName"resultType="User">SELECT * FROM UserWHERE valid = 1<if test="name!= null">AND name like #{name}</if>
</select>

2、choose (when, otherwise)

<select id="findUser"resultType="User">SELECT * FROM User WHERE age = 26<choose><when test="name!= null">AND name like #{name}</when><when test="sex!= null ">AND sex like #{sex}</when><otherwise>AND valid = 1</otherwise></choose>
</select>

3、trim (where, set)

//prefixOverrides 属性会忽略通过管道分隔的文本序列(注意此例中的空格也是必要的)。它的作用是移除所有指定在 prefixOverrides 属性中的内容,并且插入 prefix 属性中指定的内容。
<trim prefix="WHERE" prefixOverrides="AND |OR ">...
</trim>//set 元素会动态前置 SET 关键字,同时也会删掉无关的逗号
<trim prefix="SET" suffixOverrides=",">...
</trim>

4、foreach

//collection="要遍历的集合" 
//item = "可以在元素体内使用的集合项"
//index = "索引"
//open = "开始字符串"
//separator = "分隔符"
//close = "结束字符串"
<select id="selectUser" resultType="User">SELECT *FROM UserWHERE ID in<foreach item="item" index="index" collection="list"open="(" separator="," close=")">#{item}</foreach>
</select>

5、bind

//bind可以创建一个变量并将其绑定到上下文
<select id="selectUser" resultType="user"><bind name="pattern" value="'%' + _parameter.getTitle() + '%'" />SELECT * FROM UserWHERE name LIKE #{pattern}
</select>

 

上一篇:【MyBatis 基础知识总结 1】SQL注入

下一篇:【全栈最全Java框架总结】SSH、SSM、Springboot

  相关解决方案