怎么使用JPA自定义SQL查询结果
发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,本篇内容介绍了"怎么使用JPA自定义SQL查询结果"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!JP
千家信息网最后更新 2025年11月15日怎么使用JPA自定义SQL查询结果
本篇内容介绍了"怎么使用JPA自定义SQL查询结果"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
JPA自定义SQL查询结果
很多时候都会遇到自定义sql,自定义返回字段,而不是pojo类。这个情况要通过接口定义返回。
直接上代码
@Query(value = "select m.field AS field,COUNT(m.field) AS size from MigrationObject m where m.xmlName = ?1 and m.groupName = ?2 group by m.field") ListgetKey(String xmlName, String groupName);
对于这种情况,只返回了两个字段,就需要定义一个接口来接收(注意AS别名的配置)
public interface WorkCenter { String getField(); String getSize();}最后跑一下demo代码
Listlist = migrationObjectRepository.getKey("EN_Work centerResource.xml","Key"); for (WorkCenter workCenter:list){ System.out.println(workCenter.getField()); System.out.println(workCenter.getSize()); }
ARBPL
5
SPRAS
2
CANUM
2
ENDDA
1
WERKS
5
JPA的SQL查询
一 点睛
JAP通过SQL查询一般有两种方法:通过NamedQuery查询和使用@Query查询。
二 JPA的NamedQuery查询
1 说明
Spring Data JPA支持用JPA的NameQuery来定义查询方法,即一个名称映射一个查询语句。
2 定义
@Entity @NamedQuery(name = "Person.withNameAndAddressNamedQuery",query = "select p from Person p where p.name=?1 and address=?2")public class Person { ......}3 使用方法
public interface PersonRepo extends JpaRepository{ //使用的是NameQuery里定义的查询语句,而不是根据方法名称来查询 Person withNameAndAddressNamedQuery(String name,String address);}
三 使用@Query查询
1 使用参数索引
public interface PersonRepo extends JpaRepository{ @Query("select p from Person p where p.address= ?1") List findByAddress(String address);}
2 使用命名参数
public interface PersonRepo extends JpaRepository{ @Query("select p from Person p where p.name= :name and p.address= :address") Person withNameAndAddressQuery(@Param("name")String name,@Param("address")String address);}
3 更新查询
public interface PersonRepo extends JpaRepository{ @Modifying @Transactional @Query("update Person p set p.name=?1") int setName(String name);//表示更新语句影响的行数}
"怎么使用JPA自定义SQL查询结果"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
查询
方法
结果
情况
语句
代码
内容
参数
名称
字段
接口
更多
知识
更新
实用
学有所成
接下来
两个
使用方法
别名
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
扬州引流宝网络技术有限公司
荆门哪里有软件开发的公司
js软件开发工程师招聘
如何看数据库用户的权限
达梦数据库设置密码复杂性
易保网络技术有限公司 徐磊
服务器维修费
深圳工业软件开发正规平台
淮南网络安全考试费用
麻将软件开发价格行情
服务器电脑怎么租
软件开发适合用什么
安装sql服务器模式
SDA软件开发工程师
吉林特种网络技术服务工程
服务器跳线开关导致风机响
vb数据库编写
数据库 矢量图
数据库做日志表
软件开发多久能做it讲师
服务器一次性并发多少请求
dell 服务器风扇
liunx下执行数据库脚本
菏泽游戏软件开发解决方案
流媒体服务器 win7
禅城区互联网科技有限公司
英雄联盟装备数据库怎么看
如何避免数据库解锁
电脑软件开发难吗
数据库实用技巧第四版答案