You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

98 lines
3.7 KiB

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 用户表数据映射文件 -->
<mapper namespace="com.example.mapper.UserMapper">
<!-- 定义用户表基础字段列表 -->
<sql id="Base_Column_List">
id,username,password,name,phone,email,avatar,role
</sql>
<!-- 查询所有用户(支持条件查询) -->
<select id="selectAll" resultType="com.example.entity.User">
select
<include refid="Base_Column_List" />
from user
<where>
<if test="id != null"> and id= #{id}</if>
<if test="username != null"> and username like concat('%', #{username}, '%')</if> <!-- 用户名模糊搜索 -->
<if test="password != null"> and password= #{password}</if>
<if test="name != null"> and name= #{name}</if>
<if test="phone != null"> and phone= #{phone}</if>
<if test="email != null"> and email= #{email}</if>
<if test="avatar != null"> and avatar= #{avatar}</if>
<if test="role != null"> and role= #{role}</if>
</where>
</select>
<!-- 根据ID查询单个用户 -->
<select id="selectById" resultType="com.example.entity.User">
select
<include refid="Base_Column_List" />
from user
where id = #{id}
</select>
<!-- 根据ID删除用户 -->
<delete id="deleteById">
delete from user
where id = #{id}
</delete>
<!-- 新增用户 -->
<insert id="insert" parameterType="com.example.entity.User" useGeneratedKeys="true">
insert into user
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null">id,</if>
<if test="username != null">username,</if>
<if test="password != null">password,</if>
<if test="name != null">name,</if>
<if test="phone != null">phone,</if>
<if test="email != null">email,</if>
<if test="avatar != null">avatar,</if>
<if test="role != null">role,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
<if test="username != null">#{username},</if>
<if test="password != null">#{password},</if>
<if test="name != null">#{name},</if>
<if test="phone != null">#{phone},</if>
<if test="email != null">#{email},</if>
<if test="avatar != null">#{avatar},</if>
<if test="role != null">#{role},</if>
</trim>
</insert>
<!-- 根据ID修改用户信息 -->
<update id="updateById" parameterType="com.example.entity.User">
update user
<set>
<if test="username != null">
username = #{username}, <!-- 用户名 -->
</if>
<if test="password != null">
password = #{password}, <!-- 密码 -->
</if>
<if test="name != null">
name = #{name}, <!-- 用户昵称 -->
</if>
<if test="phone != null">
phone = #{phone}, <!-- 手机号码 -->
</if>
<if test="email != null">
email = #{email}, <!-- 邮箱地址 -->
</if>
<if test="avatar != null">
avatar = #{avatar}, <!-- 用户头像 -->
</if>
<if test="role != null">
role = #{role}, <!-- 用户角色 -->
</if>
</set>
where id = #{id}
</update>
</mapper>