最近还原数据的时候,查询的时候发现,传的currentPage
和pageSize
不起作用,根本就没分页。返回来的hasNextPage
什么都是错的 …
@CrossOrigin @GetMapping ("/selectJiras.do") public HashMap<String, Object> selectJiras( HttpServletRequest request, @RequestParam(value = "currentPage", defaultValue = "1") int currentPage, @RequestParam(value = "pageSize", defaultValue = "10") int pageSize ) { String userId = (String) request.getAttribute("userId"); CommonPage<Jira> pageData = jiraService.selectJirasByUserId(userId, currentPage, pageSize); return StringUtils.response(200, pageData); }
|
@Override public CommonPage<Jira> selectJirasByUserId(String userId, int currentPage, int pageSize) { Page<Jira> pageParam = new Page<>(currentPage, pageSize); LambdaQueryWrapper<Jira> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(Jira::getUserId, userId) .orderByDesc(Jira::getUpdateTime); Page<Jira> result = this.page(pageParam, queryWrapper); CommonPage<Jira> pageData = new CommonPage<>( result.getRecords(), currentPage, pageSize, (int) result.getPages(), (int) result.getTotal(), result.hasNext() ); return pageData; }
|
这表面看上去也没什么问题啊?最后ChatGPT
一番才知道,还得过滤器呢 …
package net.cctv3.iCloud.config; import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;
@Configuration public class MybatisConfig { @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); interceptor.addInnerInterceptor(new PaginationInnerInterceptor()); return interceptor; } }
|
因为有@Configuration
注解,所以框架会自己扫描 …