UserMapper.xml 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  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.lc.mapper.UserMapper">
  6. <!--
  7. 一对一 级联映射 属性
  8. 需求 用户信息 + 部门信息
  9. -->
  10. <resultMap id="userByIdResultMap" type="com.lc.pojo.User">
  11. <id property="id" column="id" ></id>
  12. <result property="username" column="username" ></result>
  13. <result property="password" column="password" ></result>
  14. <result property="adderss" column="adderss" ></result>
  15. <result property="gender" column="gender" ></result>
  16. <result property="deptId" column="dept_id" ></result>
  17. <!-- 部门信息 列对应 -->
  18. <result property="dept.id" column="dept_id" ></result>
  19. <result property="dept.name" column="name" ></result>
  20. <result property="dept.comment" column="comment" ></result>
  21. </resultMap>
  22. <select id="getUserById" resultMap="userByIdResultMap" >
  23. SELECT
  24. *
  25. FROM
  26. t_user u INNER JOIN t_dept d ON u.dept_id = d.id
  27. WHERE
  28. u.id = #{id}
  29. </select>
  30. <!-- Association -->
  31. <resultMap id="userByIdResultMapAssociation" type="com.lc.pojo.User">
  32. <id property="id" column="id" ></id>
  33. <result property="username" column="username" ></result>
  34. <result property="password" column="password" ></result>
  35. <result property="adderss" column="adderss" ></result>
  36. <result property="gender" column="gender" ></result>
  37. <result property="deptId" column="dept_id" ></result>
  38. <!-- association 一对一
  39. property 实体属性
  40. javaType 类型
  41. -->
  42. <association property="dept" javaType="com.lc.pojo.Dept" >
  43. <id property="id" column="id"></id>
  44. <result property="name" column="name" ></result>
  45. <result property="comment" column="comment" ></result>
  46. </association>
  47. </resultMap>
  48. <select id="getUserByIdAssociation" resultMap="userByIdResultMapAssociation" >
  49. SELECT
  50. *
  51. FROM
  52. t_user u INNER JOIN t_dept d ON u.dept_id = d.id
  53. WHERE
  54. u.id = #{id}
  55. </select>
  56. <resultMap id="userByIdStep" type="user">
  57. <id property="id" column="id" ></id>
  58. <result property="username" column="username" ></result>
  59. <result property="password" column="password" ></result>
  60. <result property="adderss" column="adderss" ></result>
  61. <result property="gender" column="gender" ></result>
  62. <result property="deptId" column="dept_id" ></result>
  63. <!--
  64. 分布查询
  65. select
  66. -->
  67. <association
  68. property="dept"
  69. javaType="dept"
  70. select="com.lc.mapper.DeptMapper.getDeptByIdStep"
  71. column="dept_id"
  72. >
  73. </association>
  74. </resultMap>
  75. <!--
  76. 分布查询
  77. getUserByIdStep -->
  78. <select id="getUserByIdStep" resultMap="userByIdStep">
  79. select * from t_user where id = #{id}
  80. </select>
  81. <!-- 多的一方 -->
  82. <select id="getUserByIdStepCollection" resultType="user">
  83. select * from t_user where dept_id = #{id}
  84. </select>
  85. </mapper>