ResultMap作业 使用 顾客表 和 订单表 的工程。查询指定用户cust_id所成交的所有订单信息要求显示:顾客的id、顾客昵称、订单的集合List 工程:egmybatis数字 表名:顾客表customers 订单表 user_orders
在使用MyBatis的ResultMap进行查询时,需要先定义好两个实体类Customer和Order,并在mapper.xml中配置相应的查询语句和ResultMap。
首先是Customer实体类:
public class Customer {
private Integer cust_id;
private String cust_name;
// getters and setters
}
然后是Order实体类:
public class Order {
private Integer order_id;
private Integer cust_id;
private String order_info;
// getters and setters
}
接下来,在mapper.xml中配置查询语句和ResultMap:
<!-- 查询指定用户cust_id所成交的所有订单信息 -->
<select id="getCustomerOrders" resultMap="customerOrderResultMap">
SELECT c.cust_id, c.cust_name, o.order_id, o.order_info
FROM customers c
JOIN user_orders o ON c.cust_id = o.cust_id
WHERE c.cust_id = #{custId}
</select>
<!-- 定义ResultMap -->
<resultMap id="customerOrderResultMap" type="Customer">
<id property="cust_id" column="cust_id"/>
<result property="cust_name" column="cust_name"/>
<collection property="orders" ofType="Order">
<id property="order_id" column="order_id"/>
<result property="order_info" column="order_info"/>
</collection>
</resultMap>
最后,在CustomerMapper接口中定义方法:
public interface CustomerMapper {
Customer getCustomerOrders(Integer custId);
}
这样,就可以通过调用getCustomerOrders方法,传入指定的cust_id,来获取该用户成交的所有订单信息,包括顾客的id、顾客昵称和订单的集合List。
原文地址: http://www.cveoy.top/t/topic/jcwr 著作权归作者所有。请勿转载和采集!