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如何使用logback实现多环境配置?
Jun 16 Java/Android
解决SpringBoot跨域的三种方式
Jun 26 Java/Android
一篇文章带你学习Mybatis-Plus(新手入门)
Aug 02 Java/Android
Java数据开发辅助工具Docker与普通程序使用方法
Sep 15 Java/Android
OpenCV实现反阈值二值化
Nov 17 Java/Android
解析探秘fescar分布式事务实现原理
Feb 28 Java/Android
spring注解 @PropertySource配置数据源全流程
Mar 25 Java/Android
Android超详细讲解组件ScrollView的使用
Mar 31 Java/Android
Java 垃圾回收超详细讲解记忆集和卡表
Apr 08 Java/Android
Java Spring Boot 正确读取配置文件中的属性的值
Apr 20 Java/Android
Java工作中实用的代码优化技巧分享
Apr 21 Java/Android
java实现自定义时钟并实现走时功能
Jun 21 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异步执行的详解
2013/06/03 PHP
PHP+Mysql树型结构(无限分类)数据库设计的2种方式实例
2014/07/15 PHP
如何使用php脚本给html中引用的js和css路径打上版本号
2015/11/18 PHP
Zend Framework数据库操作技巧总结
2017/02/18 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
TP5框架简单登录功能实现方法示例
2019/10/31 PHP
jquery live()重复绑定的解决方法介绍
2014/01/03 Javascript
查询json的数据结构的8种方式简介
2014/03/10 Javascript
使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)
2014/06/05 Javascript
jquery 为a标签绑定click事件示例代码
2014/06/23 Javascript
JQuery实现动态表格点击按钮表格增加一行
2014/08/24 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
JavaScript验证知识整理
2017/03/24 Javascript
JS动态添加的div点击跳转到另一页面实现代码
2017/09/30 Javascript
NodeJs实现定时任务的示例代码
2017/12/05 NodeJs
详解vue 2.6 中 slot 的新用法
2019/07/09 Javascript
非常漂亮的js烟花效果
2020/03/10 Javascript
vue-resource post数据时碰到Django csrf问题的解决
2020/03/13 Javascript
javascript实现文字跑马灯效果
2020/06/18 Javascript
vite2.0+vue3移动端项目实战详解
2021/03/03 Vue.js
[07:55]2014DOTA2 TI正赛第三日 VG上演推进荣耀DKEG告别
2014/07/21 DOTA
[54:24]Optic vs TNC 2018国际邀请赛小组赛BO2 第二场
2018/08/18 DOTA
python实现的简单窗口倒计时界面实例
2015/05/05 Python
Python在信息学竞赛中的运用及Python的基本用法(详解)
2017/08/15 Python
Numpy 改变数组维度的几种方法小结
2018/08/02 Python
Python实现购物评论文本情感分析操作【基于中文文本挖掘库snownlp】
2018/08/07 Python
Python控制Firefox方法总结
2019/06/03 Python
python批量图片处理简单示例
2019/08/06 Python
将pymysql获取到的数据类型是tuple转化为pandas方式
2020/05/15 Python
戴尔英国官网:Dell英国
2017/05/27 全球购物
房产委托公证书样本
2014/04/04 职场文书
群众路线党员个人整改措施
2014/10/27 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
三好学生竞选稿范文
2019/08/21 职场文书
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python