1、加載依賴
<!--分頁插件--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>3.4.2</version> </dependency>
2、配置類
import java.util.Properties; /** * @Author Pandas * @Date 2020/3/31 22:08 * @Version 1.0 * @Description mibatis配置類 */ @Configuration public class MybatisConfig { @Bean public PageHelper pageHelper(){ PageHelper pageHelper=new PageHelper(); Properties properties=new Properties(); //設置為true,會將rowBounds的第一個參數offset當成pageNum頁碼使用 properties.setProperty("offsetAsPagNum","true");
properties.setProperty("dialect","mysql");
//設置為true,使用RowBounds分頁會進行count查詢
properties.setProperty("rowBoundWithCount","true");
properties.setProperty("reasonable","true");
pageHelper.setProperties(properties);
return pageHelper; } }
然后controller層:
@GetMapping("page")
public Object pageVideo(@RequestParam(value="page",defaultValue = "1")int page,
@RequestParam(value = "size",defaultValue = "5")int size){
PageHelper.startPage(page,size);
List<Video> list=videoService.findAll();
PageInfo<Video> pageInfo=new PageInfo<>(list);
Map data=new HashMap<>();//在返回的信息中選擇性抽取
data.put("total_size",pageInfo.getTotal());//總條數
data.put("total_pages",pageInfo.getPages());//總頁數
data.put("current_page",page);//當前頁
data.put("data",pageInfo.getList());//數據
return data ;
}