SpringDataJpa 用MySQL语句怎么分页,spring全家桶SpringDataJpa 用MySQL语句怎么分页
2023-02-18 16:35:58 时间
实体类():
这里就略过了。。。。
数据访问接口(dao):
public interface ProblemDao extends JpaRepository<Problem,String>,JpaSpecificationExecutor<Problem>{
@Query(value ="SELECT * FROM **" ,nativeQuery = true)//MySQL查询语句
public Page<Problem> newlist(String labelid, Pageable pageable);//分页只需要 加上Pageable
}
注意:用MySQL语句查询时,@Query(value ="语句",nativeQuery = true)
中的 nativeQuery = true
必须加上,否则不生效,因为默认不是Sql语句!
控制器层(controller):
@GetMapping("/{id}/{page}/{size}")
public Result newlist(@PathVariable String labelid,@PathVariable int page,@PathVariable int size){
Page<Problem> pagedata = problemService.newlist(labelid, page, size);
return new Result(true,StatusCode.OK,"查询分页成功",new PageResult<Problem>(pagedata.getTotalElements(),pagedata.getContent()));
}
服务层(service):
public Page<Problem> newlist(String labelid, int page,int rows){
//创建一个分页对象
Pageable pageable=PageRequest.of(page-1,rows);
//返回时 把分页对象返回
return problemDao.newlist(labelid,pageable);
}
!!!切记返回类型为: Page !!!
相关文章
- [android] 安卓消息推送的几种实现方式
- [android] 安卓进程优先级&为什么使用服务
- MySQL 日志之 binlog 格式 → 关于 MySQL 默认隔离级别的探讨
- [android] 安卓自定义样式和主题
- [javaEE] 开源数据库连接池
- [javaEE] 数据库连接池和动态代理
- [android] 安卓消息推送的几种实现方式
- [android] 安卓进程优先级&为什么使用服务
- Mysql join left查询无法命中索引一例
- 2022-12-11:行程和用户。以下为输出结果,请问sql语句如何写? +------------+-------------------+ | Day |
- Valentina Studio Pro mac/win(数据库管理器)最新版
- 10个人9个答错,另外1个只对一半:数据库的锁,到底锁的是什么?
- (一)Mysql基础
- (二)Mysql基本操作
- (三)SQL语言基础
- (五)SQL运算符
- 数据库运维 | 携程分布式图数据库NebulaGraph运维治理实践
- Oracle连接工具PLSQL登录时提示初始化失败,无法锁定OCI.dll错误解决
- SQL 入门篇之什么是别名?
- SQL ALTER TABLE 语句