问题:在使用若依框架的过程中,列表分页失效,只能显示十条数据,没有分页工具,十条之外的数据只能通过列表的显示行数来控制显示
1、原因
分页工具只能在数据查询出来不做任何处理的情况下使用,因为这个时候列表的总数是固定的,分页的参数可控。以若依自己的代码为例:
Controller层:
@RequiresPermissions("system:user:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(SysUser user)
{
startPage();
List<SysUser> list = userService.selectUserList(user);
return getDataTable(list);
}
Service层:
/**
* 根据条件分页查询用户列表
*
* @param user 用户信息
* @return 用户信息集合信息
*/
@Override
@DataScope(deptAlias = "d", userAlias = "u")
public List<SysUser> selectUserList(SysUser user)
{
return userMapper.selectUserList(user);
}
数据在被查询出来之后直接分页,分页功能妥妥地好用!
如果碰到查询数据再次附加查询数据的情况,就没法进行列表的分页。
2、解决方法
碰到数据需要处理的情况,只有一种办法就是在service层逻辑的最后一句,将所有的数据都查出来下面说一下具体解决办法:
步骤一:在新建controller里面继承若依自带的BaseController
步骤二:Contorller层写法
加入startPage()和getDataTable():
/**
* 查询xx列表
*/
@RequiresPermissions("xx:xx:list")
@PostMapping("/list")
@ResponseBody

在使用若依框架时遇到列表分页功能失效的问题,只能显示固定数量数据。问题源于查询数据后进行了额外处理,导致无法正常分页。解决方法包括在Controller中继承BaseController,使用startPage()和getDataTable(),并在Service层处理逻辑后查询全部数据,通过遍历ID集合获取完整列表。

3678

被折叠的 条评论
为什么被折叠?



