MyBatis-Plus进行查询分页
MyBatis-Plus进行查询分页
MP内置了分页查询插件,可以直接使用,非常方便。
- MP把分页之后查询出来的一页,分装为一个对象 Page
- MP 的mapper层已经内置了分页查询方法selectPage(Page,wrapper);
1 sevice层定义分页查询
public interface SysMenuService extends IService {
IPage findByPage(Page page);
}
@Service
public class SysMenuServiceImpl extends ServiceImpl
implements SysMenuService{
@Autowired
SysMenuMapper sysMenuMapper;
@Override
public IPage findByPage(Page page) {
return sysMenuMapper.selectPage(page,null); // MP会根据Page对象,自动取Page对象里面的值,然后进行分页查询,查询结果封装为IPage对象,进行返回
}
}
2 controller层定义传入的每页大小和当前页页码
页码从1开始
@RestController
public class mpController {
@Autowired
SysMenuService sysMenuService;
@GetMapping("/findByPage")
public IPage findByPage(int pageCurrent, int pageSize){
Page page = new Page<>(pageCurrent, pageSize); // 创建一个Page对象,用来封装要显示的页面VO,
return sysMenuService.findByPage(page); // 返回VO,这个VO是一个Ipage对象,前端会自动转化为JSON字符串
}
}