Mapper映射文件常用标签
1、select - 用于映射 SELECT 语句。此标签用于从数据库中查询数据,并且可以选择返回不同的结果类型。通常需要结合 resultType 或 resultMap 属性来指定结果应该映射到哪种 Java 类型或自定义的结果映射规则。
<select id="selectUsers" resultType="map"> SELECT * FROM users </select>
2、insert - 用于映射 INSERT 语句。此标签允许向数据库表中插入新的记录。可以使用
<insert id="insertUser" parameterType="com.example.User"> INSERT INTO users(name, email) VALUES (#{name}, #{email}) </insert>
3、update - 用于映射 UPDATE 语句。此标签允许更新已存在的记录。通常与
<update id="updateUser" parameterType="com.example.User"> UPDATE users SET name = #{name}, email = #{email} WHERE id = #{id} </update>
4、delete - 用于映射 DELETE 语句。此标签允许从数据库中删除记录。
<delete id="deleteUser" parameterType="int"> DELETE FROM users WHERE id = #{id} </delete>
5、where - 该标签用于处理 SQL 语句中的 WHERE 子句。它能够智能地添加 WHERE 关键字并且自动移除第一个条件前面的逗号。例如,如果动态生成的 SQL 有多个条件,则第一个条件前不会出现不必要的逗号。
6、selectKey - 用于执行一个 SQL 语句来获取数据库自动生成的主键值(如 MySQL 的 AUTO_INCREMENT)。此标签通常与插入语句一起使用,以便在插入新记录后立即获取生成的主键。
7、set - 此标签用于构建 UPDATE 语句中的 SET 子句。它可以智能地忽略值为 null 的属性,从而避免在 UPDATE 语句中设置 null 值。
8、 if - 动态 SQL 标签之一,用于基于表达式的条件来决定是否包含某个子句。只有当测试条件为 true 时,if 标签内部的 SQL 才会被包含在最终的 SQL 语句中。
9、 forEach - 用于迭代集合对象(如 List 或 Map),通常用于构建 IN 条件或者批量更新/插入。它可以遍历集合中的每一个元素来构建最终的 SQL 语句。
10、trim - 用于动态修剪 SQL 语句的前缀或后缀,比如去除多余的空格、括号、逗号等。它包含几个有用的属性,如 prefix, suffix, prefixOverrides, 和 suffixOverrides。
11、choose when otherwise - 这组标签相当于 Java 中的 switch-case 结构。choose 开始一组选择,when 标签指定条件,如果所有 when 条件都不满足,则执行 otherwise 中的 SQL。
12、ResultMap - 用于定义复杂的结果映射规则,包括一对一和一对多的关系映射。通过 resultMap,你可以指定如何将数据库查询结果映射到 Java 对象上。
13、Assocation - 用于处理一对一的关系映射。它通常作为 resultMap 的一部分来使用。
14、Collection - 用于处理一对多的关系映射,同样也是 resultMap 的一部分。它可以处理列表、数组等集合类型的映射。
15、sql - 用于定义可重用的 SQL 代码片段。定义在 sql 标签中的 SQL 代码可以被 include 标签引用。
16、include - 用于引用由 sql 标签定义的 SQL 代码片段,这样可以避免 SQL 代码的重复编写,提高代码的复用性。
17、cache - 用于配置映射器级别的缓存。可以通过 cache 标签来启用或禁用缓存,也可以设置缓存的过期时间等属性。
标签:语句,Mapper,映射,标签,用于,SQL,Mybatis,WHERE From: https://www.cnblogs.com/chengzhenghai/p/18464903