JPA如何使用entityManager执行SQL并指定返回类型


Posted in Java/Android onJune 15, 2021

下面是代码

Query query = entityManager.createNativeQuery(yourSql);
//指定返回类型
query.unwrap(SQLQuery.class).setResultTransformer(Transformers.aliasToBean(yourClass));
//获取返回集合
List resultList = query.getResultList();

注:此方法不支持枚举类的自动转型,需要在entity中改一下枚举类的set方法。

如下:

//此处传入String类型
public void setCheckResult(String checkResult) {
     //调用枚举类的valueOf方法
this.checkResult = CheckResultEnum.valueOf(checkResult);
    }

jpa 使用entitymanager查询表并返回List<Map<Column,Value>>

entityManager通过Spring自动注入

var query = entityManager.createNativeQuery(sql)
import org.hibernate.SQLQuery
import org.hibernate.transform.Transformers
query.unwrap(classOf[SQLQuery]).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP)
query.getResultList

这里返回的是List<Object> Object其实就是Map,Key为列名 Value为值

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
springboot @ConfigurationProperties和@PropertySource的区别
Jun 11 Java/Android
SpringAop日志找不到方法的处理
Jun 21 Java/Android
java中重写父类方法加不加@Override详解
Jun 21 Java/Android
SpringBoot集成Redis,并自定义对象序列化操作
Jun 22 Java/Android
Spring Data JPA的Audit功能审计数据库的变更
Jun 26 Java/Android
Java基础之详解HashSet的使用方法
Jun 30 Java/Android
JPA 通过Specification如何实现复杂查询
Nov 23 Java/Android
ConditionalOnProperty配置swagger不生效问题及解决
Jun 14 Java/Android
java中如何截取字符串最后一位
Jul 07 Java/Android
maven 解包依赖项中的文件的解决方法
Jul 15 Java/Android
基于Android10渲染Surface的创建过程
Aug 14 Java/Android
Spring boot实现上传文件到本地服务器
Aug 14 Java/Android
Java Shutdown Hook场景使用及源码分析
Spring Data JPA使用JPQL与原生SQL进行查询的操作
Jun 15 #Java/Android
解决Maven项目中 Invalid bound statement 无效的绑定问题
解析Java异步之call future
分析Netty直接内存原理及应用
Jun 14 #Java/Android
详解JAVA中的OPTIONAL
解析Java中的static关键字
You might like
PHP 数组实例说明
2008/08/18 PHP
thinkphp文件处理类Dir.class.php的用法分析
2014/12/08 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
2020/07/21 PHP
如何简单地用YUI做JavaScript动画
2007/03/10 Javascript
地震发生中逃生十大法则
2008/05/12 Javascript
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
2009/06/14 Javascript
异步动态加载JS并运行(示例代码)
2013/12/13 Javascript
javascript 拷贝节点cloneNode()使用介绍
2014/04/03 Javascript
jQuery实现鼠标单击网页文字后在文本框显示的方法
2015/05/06 Javascript
基于jQuery 实现bootstrapValidator下的全局验证
2015/12/07 Javascript
js实现根据身份证号自动生成出生日期
2015/12/15 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
深入学习jQuery中的data()
2016/12/22 Javascript
vuejs指令详解
2017/02/07 Javascript
jQuery实现点击DIV同时点击CheckBox,并为DIV上背景色的实例
2017/12/18 jQuery
vue页面离开后执行函数的实例
2018/03/13 Javascript
JavaScript引用类型Array实例分析
2018/07/24 Javascript
超轻量级的js时间库miment使用解析
2019/08/02 Javascript
浅谈Vue项目骨架屏注入实践
2019/08/05 Javascript
用Python输出一个杨辉三角的例子
2014/06/13 Python
Python的爬虫程序编写框架Scrapy入门学习教程
2016/07/02 Python
详解Django+Uwsgi+Nginx 实现生产环境部署
2018/11/06 Python
Pyqt5如何让QMessageBox按钮显示中文示例代码
2019/04/11 Python
解决pycharm每次打开项目都需要配置解释器和安装库问题
2020/02/26 Python
Python unittest 自动识别并执行测试用例方式
2020/03/09 Python
Python+PyQt5实现灭霸响指功能
2020/05/25 Python
keras实现调用自己训练的模型,并去掉全连接层
2020/06/09 Python
Python根据字符串调用函数过程解析
2020/11/05 Python
Oral-B荷兰:牙医最推荐的品牌
2020/02/25 全球购物
天逸系统(武汉)有限公司Java笔试题
2015/12/29 面试题
销售代表求职自荐信
2013/10/01 职场文书
施工安全协议书
2013/12/11 职场文书
自我评价个人范文
2013/12/16 职场文书
私人会所最新创业计划书范文
2014/03/24 职场文书
2015年教师新年寄语
2014/12/08 职场文书
django项目、vue项目部署云服务器的详细过程
2022/07/23 Servers