導包
<dependencies>
<!--Springboot-MVC -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- MyBatis-Plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.1.1</version>
</dependency>
<!--MySQL連接配接包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!--工具包 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
</dependencies>
在啟動類中注入分頁Bean
//Spring boot方式
@Configuration
@MapperScan("com.baomidou.cloud.service.*.mapper*")
public class MybatisPlusConfig {
/**
* 新的分頁插件,一緩和二緩遵循mybatis的規則,需要設定 MybatisConfiguration#useDeprecatedExecutor = false 避免緩存出現問題(該屬性會在舊插件移除後一同移除)
*/
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
}
controller方法
注意包:import com.baomidou.mybatisplus.extension.plugins.pagination.Page;分頁對象
這裡注入service層就省略了
/**
* 分頁查詢
*/
@GetMapping("/findPage")
public List<User> fenye(@RequestParam(value = "page",defaultValue = "1") int page,@RequestParam(value = "size",defaultValue = "10") int size){
//建立分頁對象
Page<User> paged = new Page<>(page,size);
List<User> jobInfos = service.selectUserPage(paged);
return jobInfos;
}
service方法
@Autowired
private UserMapper userMapper; //如果爆紅也沒事,假錯誤
/**
* 分頁查詢
*/
public List<User> selectUserPage(Page<User> page) {
// 調用Mapper接口傳回一個page對象
Page<User> jobInfoPage = userMapper.selectPage(page, null);
//page對象轉list對象
List<User> records = jobInfoPage.getRecords();
return records;
}