`
luochaobin
  • 浏览: 12848 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

Hibernate 返回单个值查询

阅读更多
Query q = session.createQuery("select count(*) from table");
Integer i = (Integer)q.uniqueResult();
 
 这样就可以了,要确保你的hql语句只返回一个对象,否则调用uniqueResult() 会有异常
 
1 getCurrentSession创建的session会和绑定到当前线程,而openSession不会。

2 getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而openSession必须手动关闭

Query query = this.getSessionFactory().getCurrentSession().createSQLQuery(sb.toString());
return query.list().size();
 
当上面一个抛出 异常时 可以尝试用下一个:
 
Session session=this.getHibernateTemplate().getSessionFactory().openSession();
return session.createQuery(hql).executeUpdate();
分享到:
评论

相关推荐

    Hibernate_query查询数据表中的一个字段.

    无论哪种查询方式,最后都会返回一个结果列表,你可以遍历这个列表来获取并处理查询到的`username`字段的值。 总结,Hibernate提供多种方式查询数据表中的字段,包括HQL、Criteria API和DetachedCriteria,选择合适...

    Hibernate连表查询 Hibernate连表查询

    获取单个字段值 如果只需要查询结果中的一个或几个字段,可以像下面这样处理: ```java for (int i = 0; i (); i++) { Object[] o = (Object[]) list.get(i); System.out.println(o[0]); // 输出第一个字段的值 ...

    Hibernate 函数 ,子查询 和原生SQL查询

    子查询是嵌套在另一个查询中的查询,它可以作为查询的一部分返回单个值、多个值或整个结果集。在Hibernate中,子查询可用于以下场景: 1. **IN/NOT IN操作符**:`from Entity e where e.id in (select id from ...

    Hibernate-HQL-查询-Query资料

    - 子查询可以返回单个值,也可以返回对象列表。 8. **参数化查询** - 使用问号(?)作为占位符,防止SQL注入攻击。 - 可以使用Query接口的setParameter()方法设置参数值。 9. **案例分析** - "HQL查询语言.doc...

    Hibernate中的查询:HQL、Criteria、原生SQl

    原生SQL查询可以返回结果集、单个值或自定义的结果类型。但需要注意的是,这种方式可能会丢失一些Hibernate的自动转换和事务管理功能。 总结,Hibernate提供了多种查询方式以适应不同场景的需求。HQL适用于大多数...

    Hibernate中,利用Criteria查询容器实现sql的写法

    4. **Projections**: 用于定义查询结果的返回类型和形式,比如返回单个字段值、聚合函数结果或整个实体对象。 5. **Order**: 用于设置排序条件,可以指定升序或降序排列。 以下是一个简单的示例,展示如何使用...

    hibernate hql各类查询范例

    以上内容涉及了使用 HQL 和 DetachedCriteria 进行查询、参数化查询、执行更新操作以及简单的统计查询等常见的 Hibernate 操作。这些知识点对于理解和掌握 Hibernate 框架的基本使用至关重要,同时也是开发基于 ...

    Hibernate HQL查询.docx

    - 示例:查询订单金额超过平均值的订单。 ```java String hql = "SELECT o FROM Order o WHERE o.amount > (SELECT AVG(o2.amount) FROM Order o2)"; List<Order> orderList = session.createQuery(hql).list();...

    java框架之hibernate

    - 在单个进程中使用安全,但在集群环境下可能引发冲突。 6. **Native**: - 根据底层数据库的能力选择最合适的生成策略。 - 通常是最优选择,可以自动适应不同的数据库。 7. **Select**: - 通过执行数据库...

    hibernate调用存储过程

    存储过程可能返回单个值、多行结果集或无返回值。在上述代码中,我们使用`list()`获取结果集,然后遍历处理。对于单个返回值,可以使用`getSingleResult()`。如果存储过程没有返回值,`execute()`方法就足够了。 5...

    Hibernate查询详解

    - 只查询对象的部分属性,可以返回单个属性值、数组或对象列表。 8. **动态构造查询**: - 动态构建HQL,适用于处理复杂的查询,可以根据条件灵活调整查询语句。 9. **分组与排序**: - 使用`Order by`子句进行...

    Hibernate criteria基本操作

    Hibernate Criteria 是一种在Java应用程序中使用Hibernate ORM框架执行SQL查询的方式。它提供了一种面向对象的方式来构建查询,使得代码更加可读和易于维护。Criteria API 提供了多种方法来构建复杂的查询,包括添加...

    hibernate.jar包

    7. ** Criteria API的Projection**:Projection用于定义查询结果的形状,可以返回单个值、一组值或者对象实例。 8. **关联映射**:Hibernate支持多种关联映射,如一对一(OneToOne)、一对多(OneToMany)、多对一...

    springboot利用jpa连接hibernate用法2

    如果实体有@Id注解且值为null,Hibernate会自动生成主键。 - **读取(Read)**: 可以通过`findById()`获取单个实体,`findAll()`获取所有实体,或者使用自定义的JPA查询方法。 - **更新(Update)**: 修改实体属性...

    Hibernate学习笔记(2)

    4. QBC(Query By Example):基于实例的查询,通过创建一个对象实例,设置其属性值,然后使用`Example.create()`创建一个示例,再将其添加到`Criteria`中。这种方式非常直观,适用于简单的查询。 5. Native SQL:...

    hibernate_first6项目源码

    `list()`返回一个对象列表,`uniqueResult()`返回单个结果。 这个项目提供了一个很好的学习平台,通过查看源代码,你可以了解到如何在实际项目中灵活运用Criteria查询,以及如何与其他Hibernate功能(如事务管理、...

    hibernate 中文注解

    - **生成的属性:** 使用`@Generated`注解生成属性值。 - **继承:** `@Inheritance`注解用于配置继承策略。 - **关于单个关联关系的注解:** - **延迟选项和获取模式:** `@Fetch`注解控制关联关系的加载方式。 -...

    Hibernate中的Criteria的认识

    // 注意:由于返回的是单个聚合值,所以这里返回的是List类型 ``` 这里的`setProjection`方法用于设置投影,即指定查询返回哪些列或计算结果。`Projections.avg`表示计算平均值。 ### 分组查询 对于需要对数据...

    Hibernate SQLQuery执行原生SQL.docx

    1. 单个对象:使用uniqueResult()方法,当查询预期只返回一行时使用。 ```java Note obj = (Note) query.uniqueResult(); ``` 2. 对象列表:使用list()方法,当查询预期返回多行时使用。 ```java List...

    Hibernate延迟加载介绍.doc

    如果目标对象(即真实的User对象)尚未加载,Hibernate会执行SQL查询(如`select * from user where id='1'`),获取数据并构建目标对象,然后将其赋值给代理对象的`CGLIB$CALLBACK_0.target`属性。 二、集合类型的...

Global site tag (gtag.js) - Google Analytics