hibernate使用自动的hql查询或者其封装的查询方法都能字段转化成对象

而如果在hibernate中使用sql时大多返回为Object[]对象

那么如何将object[]转换成model呢,答案就是

addEntity(Class cls);

实列

    public HqxgModel getMaxMinHqxg(){
StringBuilder sb = new StringBuilder();
sb.append("select ");
sb.append("'0' idStr, ");
sb.append("'' date, ");
sb.append("'0' hqsyl1End,'0' hqsyl1Start, ");
sb.append("'0' hqsyl2End,'0' hqsyl2Start, ");
sb.append("'' hqxgTitle,'' userid, ");
sb.append("'' industryCode,'' province, ");
sb.append("'' xxzrlxM,'' xxzrlxT, ");
//不保留小数点的
sb.append("max(CEILING(h.hsl))hqhslEnd,min(FLOOR(h.hsl))hqhslStart, ");
sb.append("max(CEILING(h.cjl))hqcjslEnd,min(FLOOR(h.cjl))hqcjslStart, ");
sb.append("max(CEILING(h.cje))hqcjjeEnd,min(FLOOR(h.cje))hqcjjeStart, ");
sb.append("max(CEILING(h.zdf))hqzdfEnd,min(FLOOR(h.zdf))hqzdfStart, ");
sb.append("max(CEILING(h.zxj))hqzrspEnd,min(FLOOR(h.zxj))hqzrspStart, ");
sb.append("max(CEILING(h.syl))sylEnd,min(FLOOR(h.syl))sylStart, ");
sb.append("max(CEILING(h.mgjzc))mgjzcEnd,min(FLOOR(h.mgjzc))mgjzcStart, ");
sb.append("max(CEILING(h.zsz))xxzszEnd,min(FLOOR(h.zsz))xxzszStart, ");
sb.append("max(CEILING(h.zfz))fzHeJiEnd,min(FLOOR(h.zfz))fzHeJiStart, ");
sb.append("max(CEILING(h.zzc))zczongJiEnd,min(FLOOR(h.zzc))zczongJiStart, ");
sb.append("max(CEILING(h.zgb))xxzgbEnd,min(FLOOR(h.zgb))xxzgbStart, ");
sb.append("max(CEILING(h.gsygpgsgdjlr))gsygpgsgdjlrEnd,min(FLOOR(h.gsygpgsgdjlr))gsygpgsgdjlrStart, ");
sb.append("max(CEILING(h.mgsy))mgsyEnd,min(FLOOR(h.mgsy))mgsyStart, ");
sb.append("max(CEILING(h.syl))ylnljzcsylroeEnd,min(FLOOR(h.syl))ylnljzcsylroeStart, ");
sb.append("max(CEILING(h.srjll))ylncxljllEnd,min(FLOOR(h.srjll))ylncxljllStart, ");
sb.append("max(CEILING(h.mll))mllEnd,min(FLOOR(h.mll))mllStart, ");
sb.append("max(CEILING(h.jlr))jingLiRunEnd, min(FLOOR(h.jlr))jingLiRunStart, ");
sb.append("max(CEILING(h.yysr))yingYeShouRuEnd,min(FLOOR(h.yysr))yingYeShouRuStart ");
sb.append("from hqxg h ");
try {
Query query = super.getCurrentSession().createSQLQuery(sb.toString());
List<HqxgModel> list = ((SQLQuery) query).addEntity(HqxgModel.class).list();
if( list !=null && list.size()>0)return list.get(0);
} catch (Exception e) {
e.printStackTrace();
}finally{
//System.out.println("");
}
return null;
}

hibernate在使用sql查询query自动转化成model类型数据,query.addEntity的更多相关文章

  1. hibernate使用原生SQL查询返回结果集的处理

    今天没事的时候,看到公司框架里有一个用原生SQL写的函数,说实在以前自己也干过这事,但好久都没有用,都忘得差不多了,现在基本都是用的hql语句来查询结果.hibernate中使用createSQLQu ...

  2. Hibernate SQLQuery 原生SQL 查询及返回结果集处理-1

    第一篇:官方文档的处理方法,摘自官方 在迁移原先用JDBC/SQL实现的系统,难免需要采用hibernat native sql支持. 1.使用SQLQuery hibernate对原生SQL查询执行 ...

  3. hibernate将本地SQL查询结果封装成对象

    hibernate将本地SQL查询结果封装成对象 不知道大家有没有碰过这种情况,迫于很多情况只能用native SQL来查询(如:复杂统计等),然而使用native查询后,结果会被放到object里, ...

  4. 13.hibernate的native sql查询(转自xiaoluo501395377)

    hibernate的native sql查询   在我们的hibernate中,除了我们常用的HQL查询以外,还非常好的支持了原生的SQL查询,那么我们既然使用了hibernate,为什么不都采用hi ...

  5. hibernate的native sql查询

    在我们的hibernate中,除了我们常用的HQL查询以外,还非常好的支持了原生的SQL查询,那么我们既然使用了hibernate,为什么不都采用hibernate推荐的HQL查询语句呢?这是因为HQ ...

  6. hibernate 5原生sql查询测试学习代码

    基本查询 import java.util.List; import org.hibernate.SQLQuery; import org.hibernate.Session; import org. ...

  7. 用sql查询当天,一周,一个月的数据

    用sql查询当天,一周,一个月的数据   数据查询,不管在网站还是在系统,都很常见,下文是介绍最常见的以日期查询的语句 select * from ShopOrder where datediff(w ...

  8. SQL 查询本月无数据用上个月的数据问题

    SQL 查询本月无数据用上个月的数据 前言 因为标题有长度限制,先简要说明一下应用场景.比如我们要查一段时间范围内(2013-08-01至2013-12-31)每个月每个运营商的用户总量,每个运营商用 ...

  9. Hibernate 的原生 SQL 查询

    Hibernate除了支持HQL查询外,还支持原生SQL查询.         对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取 ...

随机推荐

  1. JQuery获取元素的方法总结

    JQuery获取元素的方法总结 一.说明   获取元素的方法分为两种:jQuery选择器.jQuery遍历函数. 做个总结,巩固下知识. 二.获取本身 1.只需要一种jQuery选择器   选择器 实 ...

  2. Java的注解机制——Spring自动装配的实现原理

    http://www.cnblogs.com/Johness/archive/2013/04/17/3026689.html

  3. 如何用patch打补丁

    patch -p1 < *.patch -p1代表忽略第一层目录(patch文件中的).

  4. ConcurrentHashMap是如何提高并发时的吞吐性能

    为并发吞吐性能所做的优化 ConcurrentHashMap使用了一些技巧来获取高的并发性能,同时避免了锁.这些技巧包括: 为不同的Hash bucket(所谓hash bucket即不同范围的key ...

  5. [No000020]背单词提不起兴趣怎么办?

  6. linux下打开txt显示乱码的解决方法

    Linux打开txt文件乱码的解决方法   Linux显示在Windows编辑过的中文就会显示乱码是由于两个操作系统使用的编码不同所致.Linux下使用的编码是utf8,而Windows使用的是gb1 ...

  7. Win7安装Redis

    首先, 到 https://github.com/MSOpenTech/redis/releases 下载Redis的windows 64bit port zip 解压后放到某个目录下, 例如 c:\ ...

  8. Java 集合系列11之 Hashtable详细介绍(源码解析)和使用示例

    概要 前一章,我们学习了HashMap.这一章,我们对Hashtable进行学习.我们先对Hashtable有个整体认识,然后再学习它的源码,最后再通过实例来学会使用Hashtable.第1部分 Ha ...

  9. hadoop 2.6全分布安装

    环境:centos 6.6 + hadoop2.6 虚拟机:(vmware fusion 7.0.0) 虚拟机hostname      /    IP地址 master / 192.168.187. ...

  10. java:集合的自定义多重排序

    问题: 有一个乱序的对象集合,要求先按对象的属性A排序(排序规则由业务确定,非A-Z或0-9的常规顺序),相同A属性的记录,按根据属性B排序(排序规则,同样由业务确定,非常规顺序) -前提:业务规则是 ...