使用 MyBatis-Plus 的分页插件来简化操作。需要在配置文件中添加分页插件的配置,然后在 Mapper 接口中使用 Page 对象作为参数,就可以实现分页查询。具体的步骤如下:
- 在 application.yml 文件中添加分页插件的配置,如下:
mybatis-plus:
configuration:
map-underscore-to-camel-case: true # 开启驼峰命名
global-config:
db-config:
id-type: auto # 主键策略
mapper-locations: classpath:mapper/*.xml # mapper 文件位置
type-aliases-package: com.example.entity # 实体类包名
plugins:
- com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor # 分页插件
- 在 AuditInfoMapper 接口中使用 Page 对象作为参数,如下:
public interface AuditInfoMapper extends BaseMapper<AuditInfo> {
// 分页查询审核状态信息
IPage<AuditInfo> selectPage(Page<AuditInfo> page, @Param("type") String type, @Param("id") Integer id);
}
- 在 AuditInfoMapper.xml 文件中编写对应的 SQL 语句,如下:
<mapper namespace="com.example.mapper.AuditInfoMapper">
<!-- 分页查询审核状态信息 -->
<select id="selectPage" resultType="com.example.entity.AuditInfo">
SELECT * FROM audit_info
WHERE type = #{type} AND id = #{id}
</select>
</mapper>
- 在 AuditInfoService 接口中定义分页查询审核状态信息的方法,如下:
public interface AuditInfoService extends IService<AuditInfo> {
// 分页查询审核状态信息
IPage<AuditInfo> selectPage(Page<AuditInfo> page, String type, Integer id);
}
- 在 AuditInfoServiceImpl 类中实现分页查询审核状态信息的方法,如下:
@Service
public class AuditInfoServiceImpl extends ServiceImpl<AuditInfoMapper, AuditInfo> implements AuditInfoService {
@Override
public IPage<AuditInfo> selectPage(Page<AuditInfo> page, String type, Integer id) {
return baseMapper.selectPage(page, type, id);
}
}
- 在 Controller 层中调用 AuditInfoService 的分页查询审核状态信息的方法,如下:
@RestController
@RequestMapping("/audit")
public class AuditController {
@Autowired
private AuditInfoService auditInfoService;
// 分页查询审核状态信息
@GetMapping("/page")
public IPage<AuditInfo> selectPage(@RequestParam("type") String type, @RequestParam("id") Integer id,
@RequestParam(value = "current", defaultValue = "1") Integer current,
@RequestParam(value = "size", defaultValue = "10") Integer size) {
Page<AuditInfo> page = new Page<>(current, size);
return auditInfoService.selectPage(page, type, id);
}
}
版权声明:本文为weixin_57604284原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。