UserMapper.xml 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.sf.mapper.UserMapper">
  6. <!--
  7. namespace:关联接口和接口对应的.文件,通过接口的全类名进行关联
  8. id:对应我们接口中的方法名称
  9. parameterType:入参对象全类名
  10. 引用类型和基本数据类型
  11. 引用:对象的全类名
  12. 基本数据类型:int -> int
  13. sql : INSERT into user(user_id,user_name,create_time) VALUES (1,"admin","2021-01-12")
  14. userMapper.xml文件中 insert into user (user_id,user_name,create_time) values (#{userId},#{userName},#{createTime})
  15. #{xxx}:ognl表达式,引用类型 :通过表达式去获取入参中的属性值。
  16. 基本数据类型:直接获取的是入参值
  17. -->
  18. <insert id="addUser" parameterType="user">
  19. insert into user (user_id,user_name,create_time) values (#{userId},#{userName},#{createTime})
  20. </insert>
  21. <update id="updateUser" parameterType="user">
  22. update user set user_name=#{userName},create_time=#{createTime} where user_id = #{userId}
  23. </update>
  24. <!-- 删除用户根据用户的id-->
  25. <delete id="deleteUser" parameterType="integer">
  26. delete from user where user_id = #{userId}
  27. </delete>
  28. <!-- 查询列表
  29. id:查询列表的方法名称
  30. resultType : 方法的返回值类型
  31. select user_id , user_name ,create_time from user
  32. -->
  33. <select id="getUserList" resultType="user">
  34. select user_id , user_name ,create_time from user
  35. </select>
  36. <select id="getUserListCount" resultType="int">
  37. select count(*) from user
  38. </select>
  39. <!-- 根据用户的id查询详情-->
  40. <select id="getUserInfo" resultType="user" parameterType="integer">
  41. select user_id , user_name ,create_time from user where user_id = #{userId}
  42. </select>
  43. <!-- 批量添加-->
  44. <insert id="batchAddUsers" parameterType="user">
  45. insert into user (user_id,user_name,create_time) VALUES
  46. <foreach collection="users" item="item" separator=",">
  47. (#{item.userId},#{item.userName},#{item.createTime})
  48. </foreach>
  49. </insert>
  50. <!-- 批量添加2 根据类型进行匹配-->
  51. <insert id="batchAddUsers2" parameterType="user">
  52. insert into user (user_id,user_name,create_time) VALUES
  53. <foreach collection="list" separator="," item="item">
  54. (#{item.userId},#{item.userName},#{item.createTime})
  55. </foreach>
  56. </insert>
  57. <!-- 批量删除-->
  58. <delete id="batchDeleteByIds" parameterType="integer">
  59. delete from user where user_id in
  60. <foreach collection="ids" item="item" open="(" separator="," close=")">
  61. #{item}
  62. </foreach>
  63. </delete>
  64. <!-- 批量查询-->
  65. <select id="batchGetUsers" parameterType="integer" resultType="user">
  66. select * from user where user_id in
  67. <foreach collection="ids" item="item" open="(" separator="," close=")">
  68. #{item}
  69. </foreach>
  70. </select>
  71. <!-- 批量更新-->
  72. <update id="batchUpdateUsers" parameterType="user">
  73. <foreach collection="users" item="item" separator=";">
  74. update user
  75. <set>
  76. <if test="item.userId != null">
  77. user_name = #{item.userName} ,
  78. </if>
  79. <if test="item.createTime != null">
  80. create_time = #{item.createTime}
  81. </if>
  82. </set>
  83. where user_id = #{item.userId}
  84. </foreach>
  85. </update>
  86. <!-- 查询user列表带有分页-->
  87. <select id="getUserListWithPage" resultType="user">
  88. select * from user limit #{startRow},#{pageSize}
  89. </select>
  90. </mapper>