jpa原生query_Spring Data JPA原生SQL查询

package com.test.cms.dao.repository;

import org.springframework.stereotype.Repository;

import javax.persistence.EntityManager;

import javax.persistence.PersistenceContext;

import javax.persistence.Query;

import java.math.BigInteger;

import java.util.*;

/**

* 构建复杂查询

* @author lchb

*/

@Repository

public class NativeQueryRepository{

@PersistenceContext

private EntityManager entityManager;

/**

* 根据sql查询

* @param sql

* @param resultClass

* @param

* @return

*/

public List findBySql(String sql,Class resultClass){

Query nativeQuery=null;

if(resultClass!=null && !resultClass.equals(Object.class)) {

nativeQuery = entityManager.createNativeQuery(sql, resultClass);

}else{

nativeQuery = entityManager.createNativeQuery(sql);

}

List rows = nativeQuery.getResultList();

List resultList=new ArrayList();

for (Object obj : rows) {

T row=(T)obj;

resultList.add(row);

}

return resultList;

}

/**

* 根据参数查询

* @param sql

* @param parameters

* @param resultClass

* @param

* @return

*/

public List findBySql(String sql,Map parameters,Class resultClass){

Query nativeQuery=null;

if(resultClass!=null && !resultClass.equals(Object.class)) {

nativeQuery = entityManager.createNativeQuery(sql, resultClass);

}else{

nativeQuery = entityManager.createNativeQuery(sql);

}

Iterator> entries = parameters.entrySet().iterator();

while (entries.hasNext()) {

Map.Entry entry = entries.next();

nativeQuery.setParameter(entry.getKey(),entry.getValue());

}

List rows = nativeQuery.getResultList();

List resultList=new ArrayList();

for (Object obj : rows) {

T row=(T)obj;

resultList.add(row);

}

return resultList;

}

public Integer findCountBySql(String sql,Map parameters){

List list=this.findBySql(sql,parameters,Object.class);

BigInteger total=(BigInteger)list.get(0);

return total.intValue();

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/498768.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电子计算机空调,电子计算机机房空调的设计规范

电子计算机机房空调的设计规范人气:1条 电子计算机机房要求空调的房间宜集中布置;室内温、湿度要求相近的房间,宜相邻布置。2条 主机房不宜设采暖散热器。如设散热器必须采取严格的防漏措施。3条 电子计算机机房的风管及其它管道的保温和消声材料及其粘结…

依时利考勤机说明书_考勤机(依时利)产品手册

1※产品介绍一、消费机系列:产品型号:ER-691C产品类别:IC卡收费机功能简介:1、数码管和液晶双重显示,操作方便,显示直观;2、有定值、不定值、编号菜单等多种消费模式,方便消费操作3、最大消费限…

用计算机进行有理数除法时,有理数的乘除法怎么算?,什么是有理数的乘除法。越详细越好。...

一、教学目标知识与技能:①使学生在了解乘法的基础上,掌握有理数乘法法则并初步掌握有理数乘法法则的合理性。②会进行有理数乘法运算。③了解有理数的倒数定义,会求一个数的倒数。过程与方法:①经历探索有理数乘法法则&#xff0…

python从小到大的顺序输出_「小白专栏」Python中使用for循环,为什么输出结果不是按顺序?...

欢迎各位小哥哥小姐姐阅读本的文章,对大家学习有帮助,请点赞加关注哦!!!!!!!!!!您的点赞和关注将是我持续更新的动力呢.^v^有不懂的问题可以私聊我哦!前言如图,为什么输出的不是按Jen, Sarah, Phil, Edward的顺序呢?大家可以先想想为什么?思考…

雷库兹韦尔量子计算机,熬到2045年,人类可能靠人工智能战胜死亡了

这几天差评君在网上冲浪的时候,无意间挖到了这一张坟图。虽然这已经是五六年前的老梗了,但依旧今人唏嘘不已,毕竟这些年来的技术发展真的是又快又粗暴。让人不由得想像公知们一样阴阳怪气一番:科技啊,请你慢些走&#…

kdj超卖_做波段最成功的方法:“KDJ超卖”信号研判

一、超卖含义超买区,是指卖盘强盛并逐渐进入顶峰,在技术上存在反弹可能的区域。通常情况下,将KDJ震荡区间的20线作为徘徊区与超卖区的分界线。也就是说,当指标的数值超过20就算进入了超卖区间。很多朋友常常一买就跌,总…

浮点数在计算机中起什么作用,浮点数在计算机中的存储表示

今天在看面试宝典,注意到上面所说浮点数在内存里和整数的存储方式不同,但究竟有何不同呢?在网上搜了一下:在http://blog.csdn.net/djsl6071/archive/2007/03/16/1531336.aspx中介绍了浮点数在内存中的存储方式,觉得不错…

elxel表格纸张尺寸_一本书的诞生:纸张知识

平张纸的数量以令来计算,不论纸张(百科)大小,每500张为一令。卷筒纸的数量通常以吨来计算,即用重量来反映数量。单张纸的重量以每平方米的克重来表示,单位是gsm,即g/m2,如果说80g的纸,就是每平方…

学校计算机教室的用途,录播教室有什么功能,又有哪些用途

随着教育和科技的发展,传统的语音教育已经不能满足教育方式多元化的需要。然而一间功能的齐全的录播室正好完美的解决了这一难题,,那么录播教室到底有哪些功能呢?下面我们就来了解一下录播教室的几大功能和用途吧!一、…

pgsql处理文档类型数据_【干货总结】:可能是史上最全的MySQL和PGSQL对比材料

关于SQL特性支持情况的对比,可以参考:http://www.sql-workbench.net/dbms_comparison.html9. 主从复制安全性PGSQL同步流复制、强同步(remote apply)、高安全,不会丢数据PGSQL同步流复制:所有从库宕机,主库会罢工&…

计算机局域网有哪些硬件组成,局域网的硬件组成有哪些

局域网的硬件组成有哪些局域网(英文:Local Area Network 缩写LAN),指有限区域(如办公室或楼层)内的多台计算机通过共享的传输介质互连,所组成的封闭网络。一般是方圆几千米以内,局域网可以实现文件管理、应用软件共享、打印机共享…

afn原理 ios_iOS面试题:AFNetworking 底层原理分析

AFNetworking主要是对NSURLSession和NSURLConnection(iOS9.0废弃)的封装,其中主要有以下类:1). AFHTTPRequestOperationManager:内部封装的是 NSURLConnection, 负责发送网络请求, 使用最多的一个类。(3.0废弃)2). AFHTTPSessionManager:内部封装是 NSUR…

追加的英文计算机,Latex同时添加中英文摘要

注重版权,若要转载烦请附上作者和链接作者:Joshua_yi链接:https://blog.csdn.net/weixin_44984664/article/details/106168468哎,已经步入了开始写论文的年纪了,从之前的上传作业也慢慢变成了上交论文第一次用latex这玩…

网页中设定表格边框的厚度的属性_请写出在网页中设定表格边框的厚度的属性_______;设定表格单元格之间宽度属性...

【单选题】已知i110sin(ωt φ1)A,i25sin(ωt φ2)A,φ1-φ2π,则它们的相位关系是【判断题】488 . 混合性食物的食物热效应约占其总能量的10%。【单选题】2.2KW的电器正常工作1h所消耗的电能是【单选题】*从流场角度而言,北半球地面气旋是________。【单选题】*船舶在南半球…

React 路由

引言 在我们之前写的页面当中,用我们的惯用思维去思考的话,可能会需要写很多的页面,例如做一个 tab 栏,我们可能会想每个选项都要对应一个 HTML 文件,这样会很麻烦,甚至不友好,我们把这种称为 …

清华大学06届 计算机王煜,祝贺!这两位三年前从超银中学毕业的学霸,今年被清华大学“破格”录取啦...

青岛日报社/观海新闻8月13日讯 今年是“强基计划”首年招生,“强基计划”属于单独批次录取,也是高考所有批次录取中最早公布结果的,一经录取,就不再参加后续高考志愿录取投档。观海新闻记者从超银中学获悉,青岛二中今年…

jmeter web服务器协议,【JMeter4.0学习(三)】之SoapUI创建WebService接口模拟服务端以及JMeter测试SOAP协议性能测试脚本开发(示例代码)...

目录:【阐述】:首先应该遇到了一个共同的问题,JMeter3.2之后就没有WebService(SOAP) Request,后来经过查询网上资料得知其实可以用HTTP请求来操作,结果是一样的。【步骤】:一、创建WebService接口模拟服务端如果大家有…

滨江机器人餐厅_餐厅来了机器人服务员

龙源期刊网http://www.qikan.com.cn餐厅来了机器人服务员作者:柯静夏峥来源:《人民周刊》2016年第03期餐饮企业引入机器人,博的是眼球,省的是最关键的人力成本。不少人都希望身边有“大白”那样的暖男机器人,这并非遥不…

cad解除块的快捷命令_CAD撤销上一步和恢復下一步的快捷键是什么?

对于怎么撤回到上一步,大家想到最多的应该是Ctrl Z快捷键来撤销,但是如果在CAD编辑器中可直接使用返回命令即可!具体操作方法如下:1.进入到软件的操作界面之后,鼠标点击软件最左侧菜单栏中的“文件”按钮,在…

本机上的ajax需要跨域吗,jQuery AJAX跨域

jQuery AJAX跨域这是两个页面,test.php和testserver.php。test.php的$(function() {$.ajax({url:"testserver.php",success:function() {alert("Success");},error:function() {alert("Error");},dataType:"json",type:&qu…