`

(转)Hibernate中如何使用count(*)取得表中记录总数

阅读更多
public int getCount(String emailGroupId, String emailBatchId)
            throws HibernateException {

        Session session = HibernateUtil.currentSession();
        Transaction tx = session.beginTransaction();

        String hql = "select count(*) from EmailSendInfo where email_group_id = :emailGroupId and batch_id = :batchId";
        Query query = session.createQuery(hql);

        query.setString("emailGroupId", emailGroupId);
        query.setString("batchId", emailBatchId);
        /** *//**//*
         * for (Iterator it = query.iterate(); it.hasNext();) { return
         * ((Integer) it.next()).intValue(); }
         */
        try {
            return ((Integer) query.iterate().next()).intValue();
        } catch (Exception e) {
            throw new HibernateException("");
        } finally {
            tx.commit();
            HibernateUtil.closeSession();
        }
    }



spring+hibernate
//第一种方法:
  String hql = "select count(*) from User as user";
  Integer count = (Integer)getHibernateTemplate().find(hql).listIterator().next();
  return count.intValue();

//第二种方法:
 String hql = "select count(*) from User as user";
  return ((Integer)getHibernateTemplate().iterate(hql).next()).intValue();

//第三种方法:
 String hql = "select count(*) from User as user";
 Query query =  getHibernateTemplate().createQuery( getSession(),hql);
 return ((Integer)query.uniqueResult()).intValue(); 
分享到:
评论

相关推荐

    Hibernate Tool 使用文档

    此外,还提供了对Eclipse Web Tools Platform (WTP)的支持,这意味着如果你正在使用Eclipse WTP进行Web应用开发,Hibernate Tools也可以完美地集成到你的开发环境中。 - **Usage of Eclipse WTP**:Eclipse WTP为...

    hibernate多表联合查询

    在Hibernate中,可以使用以下几种方式来实现多表联合查询: - **HQL (Hibernate Query Language)** - **Criteria API** - **Native SQL** 本文将重点介绍如何使用HQL和Native SQL来实现多表联合查询。 #### 三、...

    Hibernate学习.pdf

    - **属性与字段**: 持久类中的属性代表数据库表中的字段。 - **构造器**: 必须提供一个无参数的构造方法,以便Hibernate通过反射机制实例化该类的对象。 - **getter和setter方法**: 为每个属性提供getter和setter...

    Hibernate 中文开发者文档

    Hibernate是一款强大的Java对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发者可以使用面向对象的方式处理数据库事务。这篇中文开发者文档将深入讲解Hibernate的核心概念、配置、实体映射、查询语言...

    Hibernate 中文api 等学习资料

    1. **实体管理**:理解Hibernate如何将Java对象映射到数据库表,以及Entity、Id、GeneratedValue等注解的用法。 2. **会话和事务**:掌握SessionFactory、Session和Transaction的使用,了解事务处理的基本原则。 3...

    Hibernate API

    **Hibernate API 深度解析** Hibernate 是一个强大的对象关系映射(ORM)框架,它为Java开发者提供了方便的...在实际项目中,结合使用Hibernate与其他Java EE技术,如Spring框架,可以构建出高效、稳定的企业级应用。

    hibernate的所有包

    Hibernate 是一个开源的对象关系映射(ORM)框架,它允许Java开发者将数据库操作与业务对象进行松耦合,使得在Java应用中处理SQL和关系数据库变得更加便捷。在Java开发中,Hibernate扮演着至关重要的角色,它通过...

    hibernate开发包

    - **对象关系映射 (ORM)**:ORM 是 Hibernate 的基础,它将数据库中的表映射为 Java 类,将表记录映射为 Java 对象,从而实现了数据库操作的对象化。 - **Entity(实体)**: 在 Hibernate 中,实体是数据库表的 ...

    Hibernate Tools使用指南

    **Hibernate Tools使用指南** 在Java开发中,Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了数据库操作。为了提升开发效率,Hibernate提供了一系列的工具,即Hibernate Tools,帮助开发者进行逆向...

    如何安装使用hibernate tools

    【hibernate Tools】是Java开发中用于简化Hibernate框架使用的工具集,它为Eclipse提供了对Hibernate项目的集成支持。在本文中,我们将详细介绍如何安装和使用hibernate Tools,以便在开发过程中更高效地处理...

    Hibernate Hibernate Hibernate

    1. **对象关系映射(ORM)**:ORM是Hibernate的核心概念,它将Java对象与数据库中的记录进行映射,使得开发者可以使用面向对象的方式来操作数据库,而无需编写大量的SQL语句。 2. **SessionFactory和Session**:...

    Hibernate-基础联表模板

    Hibernate是一种开源的ORM框架,它允许开发者将Java类映射到数据库表,将Java对象映射到数据库记录。这样,我们可以通过操作Java对象来完成对数据库的操作,避免了直接编写SQL语句的繁琐工作,提高了开发效率。 2....

    hibernate使用参考文档

    在使用 Hibernate 之前,需要将相关的 JAR 包导入到项目中。这些 JAR 包位于 `hibernate-release-4.2.5.Final\lib\required` 目录下,包括 `hibernate-core-4.2.5.Final.jar`、`hibernate-jpa-2.0-api-1.0.1.Final....

    Hibernate基础和入门:新建表和插入表

    标题“Hibernate基础和入门:新建表和插入表”表明这篇内容将主要围绕Hibernate这一Java持久化框架的基础知识展开,重点讲解如何使用Hibernate创建数据库表以及进行数据插入操作。Hibernate是一个强大的ORM(对象...

    Hibernate面试题专栏 - 最全的Hibernate面试题, Hibernate笔试题, Hibernate问题

    【标题】与【描述】提及的是“Hibernate面试题专栏”,主要涵盖了全面的Hibernate面试题、笔试题以及相关问题,这表明我们将要讨论的是Java领域中著名的对象关系映射框架——Hibernate的相关知识。Hibernate是一个...

    Hibernate 多表连接分页查询示范项目

    2. **定义关联**:在实体类中使用 @ManyToOne, @OneToOne, @OneToMany 或 @ManyToMany 等注解定义表之间的关联关系。 3. **创建 SessionFactory**:配置 Hibernate 的属性,如数据库连接信息,生成 SessionFactory ...

    hibernate入门学习笔记+源码

    1. **实体(Entity)**: 在Hibernate中,实体是数据库表的映射,通常是一个Java类,它的实例对应表中的记录。 2. **持久化类(Persistent Class)**: 实现了Hibernate注解或接口的Java类,可以被Hibernate管理并保存...

    hibernate框架基本包

    - **对象关系映射(ORM)**: Hibernate是ORM工具的代表,它将数据库表映射为Java类,表中的行映射为类的对象,列映射为对象的属性,实现了Java对象与数据库之间的透明交互。 - **SessionFactory和Session**: ...

    hibernate中文使用手册

    本手册旨在为使用Hibernate 3.0.4版本的开发者提供详细的指导,帮助理解和掌握如何在项目中有效地运用Hibernate,实现数据持久化。 **二、核心概念与组件** ### 1. Session与SessionFactory - **SessionFactory**...

    hibernate中文官方文档3.6

    - **JMX部署**:在J2EE环境中使用JMX管理Hibernate。 #### 四、持久化类(Persistent Classes) - **一个简单的POJO例子**:通过一个简单的POJO(Plain Old Java Object)示例来解释持久化类的概念。 - **实现一...

Global site tag (gtag.js) - Google Analytics