分页插件源自: https://github.com/rosegun/mybatis-generator-pagination
使用方法
1. 加入maven依赖
...
<dependency>
<groupId>com.rosegun</groupId>
<artifactId>mybatis-generator-pagination</artifactId>
<version>1.0.1</version>
</dependency>
...
<!-- 插件依赖 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.6</version>
<configuration>
<configurationFile>${basedir}/src/main/resources/generator/generatorConfig.xml</configurationFile>
<overwrite>true</overwrite>
<verbose>true</verbose>
</configuration>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.6</version>
</dependency>
<dependency>
<groupId>com.rosegun</groupId>
<artifactId>mybatis-generator-pagination</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
</plugin>
2. generatorConfig.xml
<plugin type="com.rosegun.plugin.MysqlLimitPlugin"/>
同时开启 selectByExample
3. java(Repository)
public List<Contract> pageQueryContracts(int pageNum, int pageSize) {
// 构建分页请求
ContractDOExample example = new ContractDOExample();
example.setPage(new Page(pageNum * pageSize, pageSize));
List<ContractDO> contractDOS = contractDOMapper.selectByExample(example);
if (CollectionUtils.isEmpty(contractDOS)) {
logger.error("分页查询合约DO结果为空");
return new ArrayList<>();
}
logger.debug("分页查询模板, contractDOS={}", contractDOS);
return ModelListConverter.convertList(contractDOS, ContractConverter::convertDO2Model);
}