使用mybatis-generator生成的Example,快速分页查询模板代码

时间:2025-03-23 07:12:13

controller接口

/**
 * 分页列表查询
 *
 * @param pageNum  页号
 * @param pageSize 页面大小
 * @param sortType 排序
 * @return BaseResult
 */
@GetMapping(value = "/getCustomerByPage")
public BaseResult getCustomerByPage(@RequestParam("pageNum") Integer pageNum, @RequestParam("pageSize") Integer pageSize, String sortType) {
	PageResult<Customer> pageResult = (pageNum, pageSize);
	return new BaseResult(200, "查询成功", (), ());
}

serviceImpl实现

@Override
public PageResult<Customer> getCustomerByPage(Integer pageNum, Integer pageSize, String name) {
	CustomerExample example = new CustomerExample();
	(" update_time desc");
	 criteria = ();

	// TODO 处理查询逻辑
	if ((name)) {
		("%" + name + "%");
	}
	//计算总数
	int totalCount = (example);
	if (pageSize != null && pageNum != null) {
		((pageNum - 1) * pageSize);
		(pageSize);
	}
	//分页查询
	List<Customer> list = (example);

	return new PageResult<>(totalCount, list);
}

PageResult

@Data
@NoArgsConstructor
@AllArgsConstructor
public class PageResult<T> {
    int totalCount;
    List<T> data;
}