赞
踩
MyBatis 是一个持久层框架,它通过 XML 或注解配置,将 Java 对象与 SQL 语句进行映射。以下是 MyBatis 中常用的一些 XML 标签:
1、<mapper>
: 标识 MyBatis 映射器 XML 文件的根元素。
2、<select>
: 用于执行查询操作的标签,可以获取一条记录或多条记录。
3、<insert>
: 用于执行插入操作的标签,将数据插入到数据库中。
4、<update>
: 用于执行更新操作的标签,更新数据库中的数据。
5、<delete>
: 用于执行删除操作的标签,从数据库中删除数据。
6、<resultMap>
: 用于定义结果集与 Java 对象之间的映射关系,可以定义复杂的映射关系。
7、<parameterMap>
: 用于定义参数与 SQL 语句中的参数映射关系,已经被 <parameterType>
取代,不再推荐使用。
8、<sql>
: 用于定义 SQL 片段,可以在多个 SQL 语句中重复使用。
9、<include>
: 用于包含其他 SQL 片段或者外部 SQL 文件中的内容。
10、<if>
、<choose>
、<when>
、<otherwise>
: 用于在 SQL 查询中实现条件判断和分支选择。
11、<foreach>
: 用于在 SQL 查询中遍历集合或数组参数,生成多条 SQL 语句。
这些是 MyBatis 中常用的 XML 标签,通过它们可以灵活地配置 SQL 查询、映射关系和条件逻辑,完成数据库操作。
1、<mapper>
标签
- <!-- userMapper.xml -->
- <mapper namespace="com.example.UserMapper">
- <!-- SQL语句和其他标签在这里定义 -->
- </mapper>
2、<select>
标签
- <!-- id为mapper接口中的方法名字 -->
- <select id="selectUserById" parameterType="int" resultType="User">
- SELECT * FROM users WHERE id = #{id}
- </select>
3、<insert>
标签
- <insert id="insertUser" parameterType="User">
- INSERT INTO users (username, password) VALUES (#{username}, #{password})
- </insert>
4、<update>
标签
- <update id="updateUser" parameterType="User">
- UPDATE users SET username = #{username}, password = #{password} WHERE id = #{id}
- </update>
5、<delete>
标签
- <delete id="deleteUser" parameterType="int">
- DELETE FROM users WHERE id = #{id}
- </delete>
6、<resultMap>
标签
- <resultMap id="userResultMap" type="User">
- <id property="id" column="id"/>
- <result property="username" column="username"/>
- <result property="password" column="password"/>
- </resultMap>
7、<parameterMap>
标签 (不推荐使用,可以用 <parameterType>
替代)
- <parameterMap id="userParameterMap" type="User">
- <parameter property="id" jdbcType="INTEGER"/>
- </parameterMap>
8、<sql>
标签
- <sql id="userColumns">
- id, username, password
- </sql>
9、<include>
标签
- <select id="selectUserWithColumns" parameterType="int" resultType="User">
- SELECT <include refid="userColumns"/> FROM users WHERE id = #{id}
- </select>
10、 <if>
标签
- <select id="selectUsersByCriteria" parameterType="Map" resultType="User">
- SELECT * FROM users
- <where>
- <if test="username != null">
- AND username = #{username}
- </if>
- <if test="email != null">
- AND email = #{email}
- </if>
- </where>
- </select>
11、 <choose>
、<when>
、<otherwise>
标签
- <select id="selectUsersByCriteria" parameterType="Map" resultType="User">
- SELECT * FROM users
- <where>
- <choose>
- <when test="username != null">
- AND username = #{username}
- </when>
- <when test="email != null">
- AND email = #{email}
- </when>
- <otherwise>
- <!-- 默认条件 -->
- AND status = '00'
- </otherwise>
- </choose>
- </where>
- </select>
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
12、<foreach>
标签
- <select id="selectUsersByIdList" parameterType="List" resultType="User">
- SELECT * FROM users
- WHERE id IN
- <foreach item="id" collection="ids" open="(" separator="," close=")">
- #{id}
- </foreach>
- </select>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。