mybatisplus订单表的分页查询
时间: 2023-09-08 19:09:32 浏览: 97
mybatis-plus分页查询
首先,你需要在项目中引入MyBatis Plus依赖,然后定义一个Mapper接口,如下所示:
```java
public interface OrderMapper extends BaseMapper<Order> {
List<Order> selectOrderPage(Page<Order> page, @Param("queryWrapper") QueryWrapper<Order> queryWrapper);
}
```
其中,`BaseMapper`是MyBatis Plus提供的基础Mapper,`Order`是你的订单实体类。`selectOrderPage`方法用于分页查询订单列表,其中`page`参数是分页对象,`queryWrapper`参数是查询条件。
接着,在Service层中调用Mapper方法进行分页查询,如下所示:
```java
@Service
public class OrderServiceImpl implements OrderService {
@Autowired
private OrderMapper orderMapper;
@Override
public Page<Order> getOrderPage(Page<Order> page, OrderVO orderVO) {
QueryWrapper<Order> queryWrapper = new QueryWrapper<>();
// 设置查询条件
// ...
List<Order> orderList = orderMapper.selectOrderPage(page, queryWrapper);
page.setRecords(orderList);
return page;
}
}
```
其中,`OrderVO`是封装了查询条件的实体类。在`getOrderPage`方法中,调用`orderMapper.selectOrderPage`方法进行分页查询,然后将查询结果设置到分页对象中返回即可。
最后,在Controller层中接收分页参数,并调用Service层方法进行分页查询,如下所示:
```java
@RestController
@RequestMapping("/order")
public class OrderController {
@Autowired
private OrderService orderService;
@GetMapping("/list")
public Result getOrderList(@RequestParam(defaultValue = "1") Integer current,
@RequestParam(defaultValue = "10") Integer size,
OrderVO orderVO) {
Page<Order> page = new Page<>(current, size);
Page<Order> orderPage = orderService.getOrderPage(page, orderVO);
return Result.success(orderPage);
}
}
```
其中,`current`和`size`参数分别表示当前页和每页显示数量,`orderVO`参数表示查询条件。在`getOrderList`方法中,先创建一个分页对象,然后调用Service层方法进行分页查询,最后将查询结果封装到`Result`类中返回即可。
阅读全文