在JPA的@Query注解中使用limit条件(详解)
发布时间 - 2026-01-11 01:45:33 点击率:次在@Query注解注释的JPQL语句中写limit语句是会报错的

unexpected token :limit near line ....
解决方法是讲@Query注解中的limit语句去掉,然后传一个Pageable pageable=new PageRequest(offset,limit)进去
示例代码:
controller
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(value = "/misaka")
public class MisakaController
{
@Autowired
private MisakaService misakaService;
@RequestMapping(value = "/list")
public List<Misaka> getBaselineOverview()
{
return misakaService.getMisaka();
}
}
service
import java.util.List;
public interface MisakaService
{
List<Misaka> getMisaka();
}
serviceimpl
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort.Direction;
import org.springframework.stereotype.Service;
@Service
public class MisakaServiceImpl implements MisakaService
{
@Autowired
private MisakaDao misakaDao;
@Override
public List<Misaka> getMisaka()
{
Pageable pageable = new PageRequest(1, 2, Direction.ASC, "name");
Page<Misaka> misakaPage = misakaDao.search(pageable);
List<Misaka> misakaList = misakaPage.getContent();
System.out.println(misakaList);
return misakaList;
}
}
dao
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.CrudRepository;
public interface MisakaDao extends CrudRepository<Misaka, Long>
{
@Query("SELECT m FROM Misaka m WHERE m.id>4")
Page<Misaka> search(Pageable pageable);
}
model
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "t_test")
public class Misaka
{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@Column(name = "name")
private String name;
public Long getId()
{
return id;
}
public void setId(Long id)
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
@Override
public String toString()
{
return "Misaka [id=" + id + ", name=" + name + "]";
}
}
数据库t_test
| id | name |
|---|---|
| 1 | m1 |
| 2 | m2 |
| 3 | m3 |
| 4 | m4 |
| 5 | m5 |
| 6 | m6 |
| 7 | m7 |
| 8 | m8 |
| 9 | m9 |
输出
Hibernate: select count(misaka0_.id) as col_0_0_ from t_test misaka0_ where misaka0_.id>4 Hibernate: select misaka0_.id as id1_29_, misaka0_.name as name2_29_ from t_test misaka0_ where misaka0_.id>4 order by misaka0_.name asc limit ?, ? [Misaka [id=7, name=m7], Misaka [id=8, name=m8]]
以上这篇在JPA的@Query注解中使用limit条件(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# query注解
# limit
# Spring data jpa @Query update的
# 聊聊Spring data jpa @query使用原生SQl
# 需要注意的坑
# 详解Spring Data JPA使用@Query注解(Using @Query)
# JPA @Query时
# 无法使用limit函数的问题及解决
# 给大家
# 希望能
# 这篇
# 报错
# 解决方法
# 小编
# 大家多多
# list
# misakaService
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像
Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面
Python结构化数据采集_字段抽取解析【教程】
Laravel如何实现事件和监听器?(Event & Listener实战)
,南京靠谱的征婚网站?
Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南
安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出
动图在线制作网站有哪些,滑动动图图集怎么做?
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
*服务器网站为何频现安全漏洞?
微信小程序 配置文件详细介绍
Laravel PHP版本要求一览_Laravel各版本环境要求对照
高防服务器租用如何选择配置与防御等级?
Laravel如何保护应用免受CSRF攻击?(原理和示例)
Win11关机界面怎么改_Win11自定义关机画面设置【工具】
Laravel如何使用withoutEvents方法临时禁用模型事件
Laravel如何发送系统通知?(Notification渠道示例)
Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧
黑客如何利用漏洞与弱口令入侵网站服务器?
如何制作一个表白网站视频,关于勇敢表白的小标题?
C++用Dijkstra(迪杰斯特拉)算法求最短路径
EditPlus中的正则表达式实战(5)
Laravel如何实现多对多模型关联?(Eloquent教程)
什么是javascript作用域_全局和局部作用域有什么区别?
Laravel事件监听器怎么写_Laravel Event和Listener使用教程
UC浏览器如何设置启动页 UC浏览器启动页设置方法
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
如何正确选择百度移动适配建站域名?
北京网站制作的公司有哪些,北京白云观官方网站?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
如何快速重置建站主机并恢复默认配置?
Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法
Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案
Mybatis 中的insertOrUpdate操作
如何构建满足综合性能需求的优质建站方案?
Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区
高性能网站服务器部署指南:稳定运行与安全配置优化方案
Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】
深入理解Android中的xmlns:tools属性
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
详解Nginx + Tomcat 反向代理 负载均衡 集群 部署指南
微信小程序 canvas开发实例及注意事项
Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制
简单实现Android文件上传
如何用PHP快速搭建高效网站?分步指南
高性能网站服务器配置指南:安全稳定与高效建站核心方案
胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?
CSS3怎么给轮播图加过渡动画_transition加transform实现【技巧】
Win11怎么设置默认图片查看器_Windows11照片应用关联设置

