<resultMap id="us" type="com.heima.pojo.User">
<id property="id" column="id"></id>
<result property="username" column="username"></result>
<result property="sex" column="sex"></result>
<result property="birthday" column="birthday"></result>
<result property="address" column="address"></result>
<collection property="orders" ofType="com.heima.pojo.Orders" >
<id property="id" column="oid" ></id>
<result property="userId" column="user_Id"></result>
<result property="number" column="number"></result>
<result property="createtime" column="createtime"></result>
<result property="note" column="note"></result>
</collection>
<!--实际查出来的每一行都回去对应一一对应如果出现我们的id一样的就就是一个不会再去对应了-->
<!--sql语句的查询并不知道什么是对象。只会按照mybatis的语法规则来实现对应
那么在我们列重名 的情况下 ,就必须进行 别名 赋予。否则将会影响结果 这个地方经常被忽略-->
<!--总结一点 第一resulttype 有三种类型 第一 简单类型 第二 pojo 第三 pojo的包装类型 第四 map-->
<!--resultmap 首先是一对一的情况 association 代表关联类的 -->
<!--resultmap 在集合的时候 是collection 集合映射 -->
<!--mybaits 依靠id是否相等来判断是否是同一个对象;如果id相等默认就是同一个对象然后继续向下映射-->
</resultMap>
<select id="findus" resultMap="us">
select u.
*,o.
id as oid,o.
user_id,o.
number, o.
createtime,o.
note from user u join orders o on u.
id=o.
user_id
</select>
<select id="finduss" resultMap="us">
select u.
* from user u
</select>
转载请注明原文地址: https://www.6miu.com/read-2050204.html