atitit。 hb Hibernate sql 查询使用

atitit。 hb  Hibernate sql 查询使用

#----------返回list<map>法..这个推荐使用。

q.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);

List li=q.list();

作者 老哇的爪子 Attilax 艾龙,  EMAIL:[email protected]

转载请注明来源: http://blog.csdn.net/attilax

#------------------默认object[]法..

// attilax 老哇的爪子  下午04:57:03   2014-5-8

Session session = getSession();

Query q = session.createSQLQuery("SELECT TOP 1000 [id]             ,[type]   FROM  [t_mb_activity]  where type="+String.valueOf(actTypeId));

List li=q.list();

Object[] fields=(Object[]) li.get(0);

return  (String) fields[0].toString();

#------List<Array>  默认好像就是这个。

q.setResultTransformer(   Transformers.TO_LIST);

[[8, 2]]

#--注射bean

Transformers.aliasToBean(target) //把结果通过setter方法注入到指定的对像属性中

#-----返回单个的值

// 上午10:40:37 2014-4-29

// 检查该奖项是否还可以送

Session session = getSession();

String checkHql = "select count(*) as bingoNum from AwardWeixin where awardId!=null and  openid=? and activityId="

+ actID;

Query cq = session.createQuery(checkHql);

cq.setParameter(0, uid);

// cq.list()

Long count = (Long) cq.uniqueResult();

// 该奖项还有余额

参考

Hibernate Transformers之三种结果转换说明 - seeareyoume的日志 - 网易博客.htm                

atitit。 hb Hibernate sql 查询使用

时间: 2024-08-06 07:34:11

atitit。 hb Hibernate sql 查询使用的相关文章

atitit. hb 原生sql跨数据库解决原理 获得hb 数据库类型运行期获得Dialect

#-----原理 Hibernate 运行期获得Dialect 2010-07-28 12:59:58|  分类: 软件开发 |举报 |字号 订阅 String dialect = ((SessionFactoryImpl) session.getSessionFactory()).getDialect() .getClass().getName(); //     //org.hibernate.dialect.MySQLDialect 如果是spring + hibernate则可以: St

hibernate sql查询对象到map中

转载请注明出处:http://blog.csdn.net/ruoyunliufeng/article/details/26059615 插入排序:它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入. 一.插入排序算法 /*************************************************************** *版权所有 (C)2014,公司名称. * *文件名称:插入排序法 *内容摘要:无 *其它说明:无 *当前版

笔记:Hibernate SQL 查询

Hibernate 支持使用原生的SQL查询,使用原生SQL查询可以利用某些数据库特性,原生SQL查询也支持将SQL语句放在配置文件中配置,从而提高程序的解耦,命名SQL查询还可以用于调用存储过程. SQL查询是通过SQLQuery接口来表示的,SQLQuery接口是Query接口的子接口,完全可以使用Query接口的方法,SQLQuery增加了二个重载方法 addEntity():将查询到的记录与特定的实体关联 addScalar():江查询的记录关联标量值 执行SQL的步骤如下: 获取Hib

hibernate sql查询

如果你跟我一样比较熟悉SQL,同时不想学习一门新的语言.那么在hibernate中使用Native SQL 查询也是一种不错的方式. 一方面,Native SQL在效率方面有天生的优势: 另一方面,SQL是数据库操作的一种标准,我们与程序.数据库关联很小.如果将来不用hibernate,而是用别的ORM,sql一样好用. 但尽量用标准SQL,而不要用过多方言SQL. 标量查询 最基本的 SQL 查询就是获得一个标量(数值)的列表. sess.createSQLQuery("SELECT * FR

hibernate sql查询后对象转换成实体类

在多表查询的时候使用hibernate的sql查询的时候,一般返回的是object[]数组,或者可以使用 session.createSQLQuery(sql).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP);     session. session.createSQLQuery(sql).addEntity(entity.class); /**     * 分页查询sql,sql语句不包含起始记录数和查询记录数     * @pa

hibernate sql查询转化为实体类

在多表查询的时候使用hibernate的sql查询的时候,一般返回的是object[]数组,或者可以使用 session.createSQLQuery(sql).setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP); 来转化为map来进行处理,可以通过以下方式将查询结果转化为实体类: 1,sql语句 String sql="select s.id as id,s.classname as classname from grade s,stu

Hibernate SQL查询 addScalar()或addEntity()

Hibernate除了支持HQL查询外,还支持原生SQL查询.          对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取这个接口.该接口是Query接口的子接口.          执行SQL查询步骤如下:          1.获取Hibernate Session对象          2.编写SQL语句          3.通过Session的createSQLQuery方法创建查询对象         

hibernate SQL查询COUNT函数

在Oracle11g中hibernate执行SQL语句使用COUNT聚合函数时,返回类型是BigDecimal 在MySQL5.5中COUNT聚合函数返回类型则是BigInteger 用其他类型数据接收hibernate则会报IllegalArgumentException异常 原文地址:https://www.cnblogs.com/MFlowers/p/11332453.html

atitit.atitit.hb many2one relate hibernate 多对一关联配置..

atitit.atitit.hb many2one relate hibernate 多对一关联配置.. 1. 多对一单向 @ManyToOne 1 1. 其中@JoinColumn 注解 2 2. @targetEntity注解 2 2. 生成的sql LEFT OUTER 2 3. 多对一也可以通过关联表的方式来映射,通过 @JoinTable 注解可 2 4. 另外一个属性也关联到table column(recomn?? ) 3 5. 参考 3 1. 多对一单向 @ManyToOne (