【Java Web开发指南】Mybatis一对多关联映射

1 嵌套查询

	<select id="findUserWithOrders2" parameterType="Integer"
			resultMap="UserWithOrdersResult2">
		SELECT * from t_customer where id=#{id}
	</select>
	<resultMap type="Customer" id="UserWithOrdersResult2">
		<id property="id" column="id"/>
		<result property="username" column="username"/>
		<result property="jobs" column="jobs"/>
		<result property="phone" column="phone"/>
		<!-- 一对多关联映射:collection
			ofType表示属性集合中元素的类型,List<Orders>属性即Orders类 -->
		<collection property="ordersList" ofType="Orders" column="id" select="top.lixiang007.mapper.OrdersMapper.findorderByuser"/>
	</resultMap>
    <select id="findorderByuser" parameterType="Integer" resultType="Orders">
	  SELECT * from t_order where customer_id=#{id}
  </select>

2 嵌套结果

	<!-- 一对多:查看某一用户及其关联的订单信息
	      注意:当关联查询出的列名相同,则需要使用别名区分 -->
	<select id="findUserWithOrders" parameterType="Integer"
			resultMap="UserWithOrdersResult">
		SELECT u.*,o.id as orders_id,o.number
		from t_customer u,t_order o
		WHERE u.id=o.customer_id
         and u.id=#{id}
	</select>
	<resultMap type="Customer" id="UserWithOrdersResult">
		<id property="id" column="id"/>
		<result property="username" column="username"/>
		<result property="jobs" column="jobs"/>
		<result property="phone" column="phone"/>
		<!-- 一对多关联映射:collection
			ofType表示属性集合中元素的类型,List<Orders>属性即Orders类 -->
		<collection property="ordersList" ofType="Orders">
			<id property="id" column="id"/>
			<result property="number" column="number"/>
		</collection>
	</resultMap>
李响Superb CSDN认证博客专家 机器学习 TensorFlow 图像处理
成为一名优秀的算法工程师⬆️ ,
目前还在读软件工程,
AI攻防、算法和深度学习方向,
微博同名❤️ :李响Superb,
(记得关注,有问题微博私信!)
我们一起努力呀!
已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 猿与汪的秘密 设计师:白松林 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值