`

4 Hibernate HQL查询,分页查询

阅读更多

 

    /**  
     * HQL查询的一个例子  
   */  
    public static void hql()   
    {   
        Session s = null;   
  
        try  
        {   
            s = HibernateUtil.getSeesion();   
            //final String hql = "from User as u where u.name=?";   
            final String hql = "from User as u where u.name=:name";   
            final Query query = s.createQuery(hql);   
            //query.setString(0, "北京市");  //从0开始   
        	query.setString("name", "北京市");   
            final List<User> list = query.list();   
            for (final User u : list)   
            {   
                System.out.println(u.getName());   
            }   
        }   
        finally  
        {   
            if (s != null)   
            {   
                s.close();   
            }   
        }   
        System.out.println("HQL完成");   
    }  

 

 

HibernateUtil工具类

package dao;   
  
import org.hibernate.Session;   
import org.hibernate.SessionFactory;   
import org.hibernate.cfg.Configuration;   
  
/**  
 * 这是一个工具类, 快速取得session  
 *   
 */  
public class HibernateUtil   
{   
    static SessionFactory   sessionFactory  = null;   
    static  
    {   
        final Configuration cfg = new Configuration();   
        cfg.configure(); //路径可以改变   
        sessionFactory = cfg.buildSessionFactory();   
    }   
  
    public static SessionFactory getSessionFactory()   
    {   
        return sessionFactory;   
    }   
  
    /**  
     * 取得session  
     *   
     * @return session  
     */  
    public static Session getSeesion()   
    {   
        return sessionFactory.openSession();   
    }   
}  

 

 

/** 
* HQL 分页查询 
*/ 
public static void page() 
{ 
	Session s = null; 
	try 
	{ 
		s = HibernateUtil.getSeesion(); 
		final String hql = " from User "; //User是类名 
		final Query q = s.createQuery(hql); 
		q.setFirstResult(0); //从第0条开始 
		q.setMaxResults(10); //取出10条 
		final List list = q.list(); 
		for (final User u : list) 
		{ 
			System.out.println(u.getId() + " " + u.getName()); 
		} 

	} 
	finally 
	{ 
		s.clear(); 
	} 
}

 

分享到:
评论
1 楼 zzjess 2016-08-09  
  

相关推荐

    Hibernate HQL查询 分页查询 模糊查询.docx

    ### Hibernate HQL 查询详解 #### 一、HQL(Hibernate Query Language)简介 HQL(Hibernate Query Language)是一种面向对象的查询语言,它允许开发者使用类及其属性来编写查询语句,而不是传统的SQL语句。这使得...

    hibernate 模糊查询 分页

    当我们想要实现模糊查询时,可以利用`Criteria` API或者`HQL`(Hibernate Query Language)来完成。例如,如果我们要查询一个名为`User`的实体类中所有名字包含"John"的用户,可以这样做: ```java Session session...

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

    Hibernate 支持多种方式来实现多表连接查询,包括 HQL(Hibernate Query Language)和 Criteria 查询。本项目主要关注 Criteria API 的使用,这是一种基于 Java 对象的查询方式,更加灵活且易于理解和维护。 **...

    STRUTS2+HIBERNATE详细的分页实现代码详细的分页实现代码

    在这个类中,我们可以通过编写Hibernate HQL或SQL查询语句来实现分页查询。 4. **Struts2 Action** 在Action类中,我们需要处理来自用户的请求参数,如当前页码和每页显示记录数等,并调用DAO中的分页查询方法获取...

    Hibernate HQL查询.docx

    ### Hibernate HQL 查询详解 #### 一、HQL 概述 Hibernate 提供了一种非常强大的查询语言——HQL(Hibernate Query Language),它在语法上与 SQL 类似但功能更为强大,因为它支持面向对象的特性,例如继承、多态性...

    hibernateHQL基本查询

    ### Hibernate HQL 基本查询详解 #### 一、HQL 概述 HQL (Hibernate Query Language) 是一种面向对象的查询语言,由 Hibernate 官方提供,用于简化数据库查询过程。与传统的 JDBC 方式相比,使用 HQL 进行数据库...

    Hibernate-HQL.rar_HQL_hibernate hql

    4. 分页查询:使用setFirstResult和setMaxResults方法实现分页,如“query.setFirstResult(0).setMaxResults(10)”。 5. 参数化查询:避免SQL注入,提高代码复用,如“SELECT u FROM User u WHERE u.name=:name”,...

    Hibernate HQL命名参数和Query接口的分页

    总结起来,熟练掌握Hibernate HQL的命名参数和Query接口的分页查询是提高数据操作效率的关键。同时,注意处理可能出现的数据库关键字冲突问题,确保ORM映射的正确性。通过这些技巧,开发者可以更好地控制和优化...

    spring+struts2+hibernate整合实现分页

    在SSH框架中,我们可以在Action中计算总页数,然后通过Hibernate的Criteria或HQL查询指定页码的数据。 5. **Struts2的拦截器**:为了实现分页,我们可以创建一个自定义的Struts2拦截器,拦截请求并添加分页参数。...

    Hibernate 课件_HQL

    ### Hibernate 课件_HQL 知识点解析 #### HQL查询 ...这些知识点涵盖了HQL的基本概念、查询方法、各种高级查询技巧以及Session的管理等方面,希望能够帮助大家更好地理解和掌握Hibernate的HQL查询技术。

    Hibernate hql查询

    **Hibernate HQL查询** Hibernate Query Language(HQL)是Hibernate框架提供的一种面向对象的查询语言,它是基于Java的,但其语法与SQL类似,用于在Java应用中操作对象。HQL允许开发者用类名和属性名而不是表名和...

    Hibernate连表查询 Hibernate连表查询

    这里使用了HQL(Hibernate Query Language)来执行查询。例如,在`getProductsMenuSub`方法中,通过以下HQL语句实现了连表查询: ```java String queryString = "select a.productsName from TopProducts as a, ...

    HibernateHQL实现前台翻页

    "HibernateHQL实现前台翻页"这一主题就是关于如何利用Hibernate的HQL(Hibernate Query Language)来实现数据库查询的分页功能,并结合Servlet(通常与MVC模式中的Controller层对应)和MySQL数据库来构建一个完整的...

    Hibernate注解方式、HQL查询

    本篇将详细探讨Hibernate的注解方式以及HQL(Hibernate Query Language)查询。 一、Hibernate注解方式 1. **实体类注解**:在Hibernate中,我们可以使用注解来定义一个Java类为数据库中的表。例如,使用`@Entity`...

    Hibernate+sqlserver2000分页

    本篇文章将深入探讨使用Hibernate ORM框架与SQL Server 2000数据库进行分页查询的方法。 首先,Hibernate是Java领域中最流行的ORM(对象关系映射)框架之一,它允许开发者使用面向对象的方式操作数据库,减少了直接...

    hibernate分页查询 数据库连接

    本篇将深入探讨Hibernate中的分页查询功能以及它如何处理数据库连接,帮助你更有效地管理大数据量的查询操作。 首先,我们来看一下什么是分页查询。在Web应用中,当用户需要浏览大量数据时,一次性加载所有数据不仅...

    hibernate的HQL的模糊查询

    下面我们将深入探讨Hibernate的HQL模糊查询及其应用。 一、HQL概述 HQL是一种面向对象的查询语言,它的语法结构与SQL类似,但更关注于对象和实体,而不是数据库表和列。HQL允许开发者直接操作Java对象,避免了直接...

    hql分页

    通过以上介绍,你应该对HQL分页有了基本理解。实践中,还需要根据具体项目需求和数据库类型进行调整,优化查询性能,提升用户体验。如果你需要进一步学习,可以参考提供的博文链接,那里可能有更详细的讨论和示例...

    Struts和Hibernate分页及查询

    在分页查询中,Hibernate提供了一种称为HQL(Hibernate Query Language)的SQL方言,可以方便地实现复杂的查询,包括分页查询。此外,Hibernate还支持Criteria查询,这是一种更加面向对象的查询方式,同样可以实现...

    hibernate分页查询

    总结,Hibernate的分页查询是其强大功能的一部分,通过Criteria API、HQL或自定义SQL,我们可以轻松地在Java应用中实现数据库的分页操作。在实际开发中,应结合数据库特性和性能需求,选择最合适的分页策略。

Global site tag (gtag.js) - Google Analytics