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 相关文章推荐
Java多条件判断场景中规则执行器的设计
Jun 26 Java/Android
详解Java线程池是如何重复利用空闲线程的
Jun 26 Java/Android
java设计模式--七大原则详解
Jul 21 Java/Android
Java网络编程之UDP实现原理解析
Sep 04 Java/Android
Java 在线考试云平台的实现
Nov 23 Java/Android
springboot+zookeeper实现分布式锁
Mar 21 Java/Android
MybatisPlus EntityWrapper如何自定义SQL
Mar 22 Java/Android
零基础学java之带参数以及返回值的方法
Apr 10 Java/Android
Spring Data JPA框架Repository自定义实现
Apr 28 Java/Android
Java Spring Lifecycle的使用
May 06 Java/Android
Spring JPA 增加字段执行异常问题及解决
Jun 10 Java/Android
Android开发手册TextInputLayout样式使用示例
Jun 10 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
ASP和PHP都是可以删除自身的
2007/04/09 PHP
php Rename 更改文件、文件夹名称
2011/05/24 PHP
用PHP提取中英文词语以及数字的首字母的方法介绍
2013/04/23 PHP
深入解析php中的foreach问题
2013/06/30 PHP
完美解决PHP中的Cannot modify header information 问题
2013/08/12 PHP
PHP SPL标准库之SplFixedArray使用实例
2015/05/12 PHP
CakePHP框架Model关联对象用法分析
2017/08/04 PHP
thinkPHP3.2.2框架行为扩展及demo示例
2018/06/19 PHP
Thinkphp5框架实现获取数据库数据到视图的方法
2019/08/14 PHP
laravel利用中间件做防非法登录和权限控制示例
2019/10/21 PHP
PHP发送邮件确认验证注册功能示例【修改别人邮件类】
2019/11/09 PHP
js下通过prototype扩展实现indexOf的代码
2010/12/08 Javascript
更换select下拉菜单背景样式的实现代码
2011/12/20 Javascript
js获取指定日期前后的日期代码
2013/08/20 Javascript
Javascript delete 引用类型对象
2013/11/01 Javascript
jquery中event对象属性与方法小结
2013/12/18 Javascript
javascript实现window.print()去除页眉页脚
2014/12/30 Javascript
Jquery数字上下滚动动态切换插件
2015/08/08 Javascript
JS实现太极旋转思路分析
2016/12/09 Javascript
微信小程序支付之c#后台实现方法
2017/10/19 Javascript
给localStorage设置一个过期时间的方法分享
2018/11/06 Javascript
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
2019/04/22 Javascript
Electron vue的使用教程图文详解
2019/07/05 Javascript
把MySQL表结构映射为Python中的对象的教程
2015/04/07 Python
使用Python简单的实现树莓派的WEB控制
2016/02/18 Python
Python基于FTP模块实现ftp文件上传操作示例
2018/04/23 Python
Django实现学生管理系统
2019/02/26 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
python多线程semaphore实现线程数控制的示例
2020/08/10 Python
中国旅游网站:同程旅游
2016/09/11 全球购物
美国畅销的跑步机品牌:ProForm
2017/02/06 全球购物
绿色学校实施方案
2014/03/31 职场文书
2015年库房工作总结
2015/04/30 职场文书
董事长开业致辞
2015/07/29 职场文书
教您:房贷工资收入证明应该怎么写?
2019/08/19 职场文书
服务器SVN搭建图文安装过程
2022/06/21 Servers