MyBatis Generator 生成代码:基于 Name 的去重分页查询
MyBatis Generator 生成代码:基于 Name 的去重分页查询
使用 MyBatis Generator 生成的代码,我们可以通过 MyBatis 提供的分页插件 PageHelper 来实现根据 name 字段进行去重分页查询。
1. Mapper.xml 文件配置
在 Mapper.xml 文件中添加以下代码,定义两个查询语句:
<select id='selectByName' resultMap='BaseResultMap'>
select *
from table_name
where name = #{name}
order by id desc
</select>
<select id='selectDistinctName' resultMap='BaseResultMap'>
select distinct name
from table_name
order by name asc
</select>
selectByName:根据 name 查询所有记录selectDistinctName:查询所有不重复的 name
2. Java 代码实现
在 Java 代码中,使用 PageHelper 插件实现分页查询:
public List<Table> selectByName(String name, int pageNum, int pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<Table> list = tableMapper.selectByName(name);
return list;
}
public List<String> selectDistinctName(int pageNum, int pageSize) {
PageHelper.startPage(pageNum, pageSize);
List<String> list = tableMapper.selectDistinctName();
return list;
}
PageHelper.startPage(pageNum, pageSize):指定分页参数tableMapper.selectByName(name)和tableMapper.selectDistinctName():调用 Mapper 中定义的查询语句
总结
通过以上步骤,我们成功实现了使用 MyBatis Generator 生成的代码,结合 PageHelper 插件,进行基于 Name 的去重分页查询。
注意:
- 实际代码中,请将
table_name替换为实际的表名 Table类为示例,请根据实际情况替换为对应的实体类- 确保已引入 PageHelper 依赖
原文地址: https://www.cveoy.top/t/topic/kfDe 著作权归作者所有。请勿转载和采集!