在MyBatis中,可以使用XML格式的Mapper文件来进行多表关联查询。下面是一个简单的例子:
假设我们有两个表:t_user和t_order,其中t_order表中有一个user_id字段,表示该订单所属的用户ID。现在我们想要查询所有订单及其对应的用户信息,可以按照以下步骤进行操作:
1. 在Mapper文件中定义一个resultMap,用于将查询结果映射到Java对象中。例如:
```
```
这里我们定义了两个resultMap,一个用于映射订单信息,另一个用于映射用户信息。在订单信息的resultMap中,我们使用了association标签来关联用户信息的resultMap。
2. 在Mapper文件中编写SQL语句,使用JOIN关键字进行多表关联查询。例如:
```
```
这里我们使用了JOIN关键字将t_order表和t_user表进行关联查询,并在SELECT语句中指定了需要查询的列。注意,我们给用户ID起了一个别名user_id,以便在resultMap中进行映射。
3. 在Java代码中调用Mapper接口的方法,获取查询结果。例如:
```
List
orderList = orderMapper.getOrderList();
```
这里我们调用了orderMapper接口中的getOrderList方法