<?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">
<!-- 命名空间
test作区别时 使用原始Dao开发
使用Mapper代理开发 namespace: 对此接口进行绑定
-->
<mapper namespace="com.mybatis.mapper.UserMapper">
<!--
id:findUserById 找到此sql
parameterType : 传入参数的类型
parameterMap : 官方 文档 已经废除
#{id} : mybatis #{} 表示占位符
resultMap : 手动映射
resultType : 自动映射
-->
<select id="findUserById" parameterType="Integer" resultType="User">
select * from user where id = #{vvv}
</select>
<!--
根据用户名称模糊查询用户列表 List<User>
#{} : 占位符 select * from user where username like '明' '明' == ? 防
${} : 字符串拼接 select * from user where username like 明 不防
select * from user where username like "%"'明'"%" 此种方式 占位符还能模糊查询
-->
<select id="findUserListByUsername" parameterType="String" resultType="com.mybatis.pojo.User">
select * from user where username like "%"#{vvv}"%"
</select>
<!-- 添加
order="AFTER" mysql 自增长ID 先保存的数据 再生成的ID
order="BEFORE" oracle 自增长 UUID 先生成ID 再保存数据
order="BEFORE" mysql UUID 先生成ID 再保存数据
-->
<!-- <insert id="addUser" parameterType="com.mybatis.pojo.User">
<selectKey keyProperty="id" resultType="Integer" order="AFTER">
select LAST_INSERT_ID()
</selectKey> -->
<insert id="addUser" parameterType="com.mybatis.pojo.User" useGeneratedKeys="true" keyProperty="id">
insert into user
(username,sex,birthday,address)
values
(#{username},#{sex},#{birthday},#{address})
</insert>
<!-- 更新
-->
<update id="updateUserById" parameterType="com.mybatis.pojo.User">
update user set
username=#{username},
sex=#{sex},
birthday=#{birthday},
address=#{address}
where id = #{id}
</update>
<!-- 删除 -->
<delete id="deleteUserById" parameterType="Integer">
delete from user
where id = #{vvvvv}
</delete>
</mapper>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 命名空间
test作区别时 使用原始Dao开发
使用Mapper代理开发 namespace: 对此接口进行绑定
-->
<mapper namespace="com.mybatis.mapper.UserMapper">
<!--
id:findUserById 找到此sql
parameterType : 传入参数的类型
parameterMap : 官方 文档 已经废除
#{id} : mybatis #{} 表示占位符
resultMap : 手动映射
resultType : 自动映射
-->
<select id="findUserById" parameterType="Integer" resultType="User">
select * from user where id = #{vvv}
</select>
<!--
根据用户名称模糊查询用户列表 List<User>
#{} : 占位符 select * from user where username like '明' '明' == ? 防
${} : 字符串拼接 select * from user where username like 明 不防
select * from user where username like "%"'明'"%" 此种方式 占位符还能模糊查询
-->
<select id="findUserListByUsername" parameterType="String" resultType="com.mybatis.pojo.User">
select * from user where username like "%"#{vvv}"%"
</select>
<!-- 添加
order="AFTER" mysql 自增长ID 先保存的数据 再生成的ID
order="BEFORE" oracle 自增长 UUID 先生成ID 再保存数据
order="BEFORE" mysql UUID 先生成ID 再保存数据
-->
<!-- <insert id="addUser" parameterType="com.mybatis.pojo.User">
<selectKey keyProperty="id" resultType="Integer" order="AFTER">
select LAST_INSERT_ID()
</selectKey> -->
<insert id="addUser" parameterType="com.mybatis.pojo.User" useGeneratedKeys="true" keyProperty="id">
insert into user
(username,sex,birthday,address)
values
(#{username},#{sex},#{birthday},#{address})
</insert>
<!-- 更新
-->
<update id="updateUserById" parameterType="com.mybatis.pojo.User">
update user set
username=#{username},
sex=#{sex},
birthday=#{birthday},
address=#{address}
where id = #{id}
</update>
<!-- 删除 -->
<delete id="deleteUserById" parameterType="Integer">
delete from user
where id = #{vvvvv}
</delete>
</mapper>