Mybatis-Plus-Join怎么使用
时间: 2024-01-11 12:13:47 浏览: 88
mybatis plus操作
使用 Mybatis-Plus-Join 进行多表查询,可以按照以下步骤进行操作:
1. 引入 Mybatis-Plus-Join 的依赖
在项目的 pom.xml 文件中,添加 Mybatis-Plus-Join 的依赖:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-join</artifactId>
<version>x.x.x</version>
</dependency>
```
其中,x.x.x 表示 Mybatis-Plus-Join 的版本号。
2. 创建查询条件对象
创建一个查询条件对象,该对象用于存储多表查询的条件,可以使用 Lambda 表达式或者 Wrapper 对象设置查询条件。
```java
JoinWrapper<User> wrapper = new JoinWrapper<>();
wrapper.lambda().eq(User::getGender, "male")
.like(User::getName, "Tom");
```
3. 创建 Join 对象
创建一个 Join 对象,该对象用于设置多表查询的关联关系和查询字段。
```java
Join<User, Order> join = Join.from(User.class)
.leftJoin(Order.class, Order::getUserId, User::getId)
.select(User::getName, User::getAge, Order::getOrderNo);
```
其中,Join.from(User.class) 表示以 User 表为主表,leftJoin(Order.class, Order::getUserId, User::getId) 表示以 Order 表为副表,并且以 Order 表的 userId 字段和 User 表的 id 字段进行关联,select(User::getName, User::getAge, Order::getOrderNo) 表示查询 User 表的 name 和 age 字段,以及 Order 表的 orderNo 字段。
4. 执行查询操作
使用 Mybatis-Plus 提供的 BaseMapper 接口的 join 方法进行多表查询,传入 Join 对象和查询条件对象,即可执行多表查询操作。
```java
List<Map<String, Object>> result = userMapper.join(join, wrapper);
```
其中,userMapper 是继承了 BaseMapper 接口的 Mapper 对象,join 方法返回一个 List<Map<String, Object>> 对象,表示查询结果。
以上就是使用 Mybatis-Plus-Join 进行多表查询的基本步骤,可以根据实际需求进行相应的调整。
阅读全文