1、配置分頁插件
創建配置包,到包下創建配置文件:MyBatisPlusConfig
@MapperScan("com.cn.springbootmybatisplus06.mapper") @EnableTransactionManagement//自動管理事務 @Configuration // 配置類 public class MyBatisPlusConfig { /** * 新版 */ @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor(); //配置樂觀鎖 mybatisPlusInterceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor()); //配置分頁插件 mybatisPlusInterceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); return mybatisPlusInterceptor; } }
測試:
@SpringBootTest public class TestMyFY { //測試分頁 @Autowired private UserMapper userMapper; @Test public void MyFY(){ //前端傳入數據 Integer ye=2; //第二頁,每頁3行 Page<User> page=new Page<>(ye,3); userMapper.selectPage(page,null); System.out.println(page); } }
如果 MybatisPlus 不滿足我們的分頁需求,可以自定義分頁:
1、創建接口方法
/** * 自定義分頁方法 * @param page MybatisPlus 給我們提高的分頁功能,必須放在第一個 * @param age 以年齡為條件進行分頁 * @return */ Page<User> selectPageMyAge(@Param("page") Page<User> page, @Param("age") Integer age);
2、到 application.properties 中開啟別名配置
#配置類型別名
mybatis-plus.type-aliases-package=com/cn/springbootmybatisplus06/pojo
3、配置接口的實現 xml 配置文件
<select id="selectPageMyAge" resultType="User"> select id,user_name,age,email from user where age > #{age} </select>
提示:這里有個坑,就是在查詢語句最后也就是 #{age} 后面不能加 ;號,因為它還要加分頁語句,使用不能結束。
4、分頁測試
@Test public void MyFY2(){ //前端傳入數據,頁數和年齡 Integer ye=1; Integer age=20; //第1頁,每頁3行 Page<User> page=new Page<>(ye,3); userMapper.selectPageMyAge(page,15); System.out.println(page); }