public List<Map<String,Object>> findBySQL(String sql,Map<String,Object> param,int start,int max) {log.debug("finding List by hql");try {       //最后返回map map的key可为别名和数据库字段SQLQuery query=sessionFactory.getCurrentSession().createSQLQuery(sql);query.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);//遍历param插入参数if(param!=null) {for (Map.Entry<String, Object> entry : param.entrySet()) {Object obj = entry.getValue();  //这里考虑传入的参数是什么类型,不同类型使用的方法不同  hibernate传入list的方法if(obj instanceof Collection<?>){  query.setParameterList(entry.getKey(), (Collection<?>)obj);  }else if(obj instanceof Object[]){  query.setParameterList(entry.getKey(), (Object[])obj);  }else{  query.setParameter(entry.getKey(), obj);  }  }}query.setFirstResult(start);//起始页if(max!=0){query.setMaxResults(max);//每页几条}List<Map<String,Object>> results = query.list();log.debug("find list successful, result size: " + results.size());return results;} catch (RuntimeException re) {log.error("find list failed", re);throw re;}}

注意 数组传入时是int 是没有属于

Object[] 或者
Collection<?>数组传入需要为封装类

转载于:https://www.cnblogs.com/L-a-u-r-a/p/7050001.html

hibernate基础工具findBySQL学习相关推荐

  1. Hibernate基础学习2

    Hibernate基础学习2 测试hibernate的一级缓存,事务以及查询语句 1)Hibernate的一些相关概念 hibernate的一级缓存 1)缓存是为了提高该框架对数据库的查询速度 2)一 ...

  2. SolidWorks大师班:从基础到专业学习教程

    流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz 语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:2.4 GB 含课程文件 |时长:3h ...

  3. ui设计培训需要什么基础?如何入门学习?

    ​ UI设计是一种直观面向用户的一个技术岗位,在互联网公司,UI设计岗位是不可或缺的,那么对于零基础想要学习UI设计的同学来说,ui设计培训需要什么基础?如何入门学习呢?我们来看看下面的详细介绍. ​ ...

  4. 零基础该如何学习Web前端知识?

    想要跳槽到IT行业人在近几年越来越多,大部分都是想要学习web前端技术,但是这其中有很多都是零基础学员,大家都想知道零基础该如何学习Web前端知识?我们来看看下面的详细介绍. 零基础该如何学习Web前 ...

  5. python编程基础与应用-有哪些适合零编程基础的人学习Python的书?

    筛选了2年内优秀的python书籍,个别经典的书籍扩展到5年内. python现在的主流版本是3.7(有明显性能提升,强烈推荐) 3.6, 不基于这两个或者更新版本的书,慎重选择.很多库已经不提供py ...

  6. 如何自学python爬虫-Python爬虫:零基础该如何学习爬虫

    点击蓝字"python教程"关注我们哟! 现行环境下 大数据与人工智能的重要依托还是庞大的数据和分析采集 类似于淘宝 京东 百度 腾讯级别的企业 能够通过数据可观的用户群体获取需要 ...

  7. 基础知识的学习,来自十年程序员的经验分享

    本文转载自微信公众号<大飞码字> 前面分享过一篇算法学习的文章 : 不懂算法,还想进大厂?做梦吧. 虽然有点标题党,但内容还是不错的. 后来就想能不能对计算机学习方法和学习心得写个系列的文 ...

  8. 初学者也能看懂的 Vue2 源码中那些实用的基础工具函数

    1. 前言 大家好,我是若川.最近组织了源码共读活动,感兴趣的可以加我微信 ruochuan12 想学源码,极力推荐之前我写的<学习源码整体架构系列>jQuery.underscore.l ...

  9. Guava 是个风火轮之基础工具(4)

    前言 Guava 是 Java 开发者的好朋友.虽然我在开发中使用 Guava 很长时间了,Guava API 的身影遍及我写的生产代码的每个角落,但是我用到的功能只是 Guava 的功能集中一个少的 ...

最新文章

  1. B - Networking - poj 1287
  2. 70.打印所有Spring boot载入的bean【从零开始学Spring Boot】
  3. Java并发- 读写锁中的性能之王:StampedLock
  4. pythonsql注入步骤_防止SQL注入解决方案
  5. opencv 学习之 亮度检测
  6. php jwt使用案例,PHP JWT初识及其简单示例
  7. Python技能树测评之改进建议
  8. 一些常见监控服务如Nagios、Cacti和Zabbix的搭建
  9. Ubuntu挑战绿坝
  10. linux生成一个ssh密钥,ssh密钥生成方式
  11. 作为空降高管,应该要做好哪些准备?
  12. 哪里看最新行业研报?
  13. BUUCTF中的reverse1
  14. 微信小程序开发视频加载:[渲染层网络层错误] Failed to load media
  15. 大宝收购案花落强生 静待商务部审批
  16. 普通投资者如何进行量化投资
  17. openface源码理解(4)
  18. html创建电子邮件链接教程
  19. EXCEPTION_ACCESS_VIOLATION
  20. tbook10s换linux,【台电Tbook10s使用测试】硬件配置|驱动适配|续航_摘要频道_什么值得买...

热门文章

  1. 【HDU - 1599】find the mincost route (Floyd最小环,最短路问题)
  2. 【HDU - 5900】QSC and Master(区间dp)
  3. 【nyoj 270】数的分解(统计因子模板)
  4. 13.Data Leakage
  5. 12.Cross-Validation
  6. 转成数组_JavaScript之数组扁平化
  7. FileIo 删除类中的private方法
  8. consul 文件夹无法显示_consul集群搭建参考
  9. 设置角标_iPhone桌面角标颜色
  10. Java防止用户同一时间重复登录(包括异地登录)