`
foreverke01
  • 浏览: 37538 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

初始hibernate3.2—Query

阅读更多

Query用处查询:代码:

package cn.keith.hibernate;

import java.util.Iterator;
import java.util.List;

import junit.framework.TestCase;

import org.hibernate.Query;
import org.hibernate.Session;

import cn.keith.hibernate.hibernateUtil.HibernateUtils;

public class StudentQueryTest extends TestCase {
	/***
	 * 查询全部内容
	 */
	public void testStudentQuery() {

		Session session = null;

		try {
			// 通过hibernate的工具类获得session
			session = HibernateUtils.getSession();
			// 开启事物
			session.beginTransaction();
			// from Student这个student不是表面,而是类名
			Query query = session.createQuery("from Student");
			// query返回值的类型是list,所以用List来接受
			List studentList = query.list();
			// 输出list值
			for (Iterator iter = studentList.iterator(); iter.hasNext();) {
				Student student = (Student) iter.next();
				System.out.println("student ID:" + student.getId() + "   "
						+ "student Name" + student.getName());
			}
			// 提交事物
			session.getTransaction().commit();
		} catch (Exception e) {
			e.printStackTrace();
			// 回滚事物
			session.getTransaction().rollback();
		} finally {
			// 关闭事物
			HibernateUtils.closeSession(session);
		}
	}

	/***
	 * 简单分页
	 */
	public void testStudentQuery1() {
		Session session = null;

		try {
			session = HibernateUtils.getSession();
			session.beginTransaction();
			Query query = session.createQuery("from Student");
			// 设置从那条数据开始
			query.setFirstResult(1);
			// 对多取多少条数据
			query.setMaxResults(2);
			//查询
			List studentList = query.list();
			//输出
			for (Iterator iter = studentList.iterator(); iter.hasNext();) {
				Student student = (Student) iter.next();
				System.out.println("student ID:" + student.getId() + "   "
						+ "student Name" + student.getName());
			}
			//提交事务
			session.getTransaction().commit();
		} catch (Exception e) {
			e.printStackTrace();
			//回滚事务
			session.getTransaction().rollback();
		} finally {
			//关闭session
			HibernateUtils.closeSession(session);
		}
	}
}

 

分享到:
评论

相关推荐

    Hibernate3.2整套源码

    - **Query和Criteria API**:这两者提供了执行查询的方法,包括HQL(Hibernate Query Language)和Criteria API。 - **Entity和Mapping**:实体类代表数据库中的表,而映射文件(.hbm.xml或注解)定义了这些实体与...

    开发框架 hibernate3.2

    - 动态模型:允许开发者使用HQL(Hibernate Query Language)或 Criteria API动态构建查询,提高了代码的灵活性和可维护性。 3. **配置与初始化** - 配置文件(hibernate.cfg.xml):定义数据库连接参数,如URL、...

    struts2+spring2.5+hibernate3.2整合完整项目,带数据库脚本

    Struts2、Spring2.5和Hibernate3.2是Java Web开发中经典的三大框架,它们的整合使用在过去的许多年里被广泛应用于企业级应用系统。这个完整的项目提供了从开发环境到运行环境的所有必要组件,包括数据库脚本,使得...

    hibernate3.2用到的jar包

    7. **查询语言(HQL)**:Hibernate Query Language是Hibernate 提供的面向对象的查询语言,类似于SQL,但操作的是对象和属性,而非表和列。 8. **Criteria查询**:另一种查询方式,通过Criteria API构建动态查询,...

    hibernate_3.2官方开发包

    2. **Configuration类**:Hibernate的初始化工作主要由Configuration类完成,它负责读取配置文件,建立SessionFactory,并且可以加载Hibernate的映射文件(.hbm.xml)。 3. **SessionFactory**:SessionFactory是...

    Hibernate3.2源代码

    Hibernate 3.2 是一个非常重要的Java持久化框架版本,它极大地简化了数据库与Java对象之间的交互。这个源代码包提供了深入理解Hibernate工作原理的机会,同时也包含对应的.jar包,使得开发者可以直接在项目中使用。...

    hibernate-3.2源代码

    《深入剖析Hibernate 3.2源代码》 Hibernate是一个开源的对象关系映射(ORM)框架,它极大地简化了Java应用程序与数据库之间的交互。在Hibernate 3.2版本中,开发者们能够更深入地理解其内部机制,从而提高开发效率...

    hibernate3.2 开发API+源码参考

    **hibernate3.2 开发API+源码参考** Hibernate是一个开源的对象关系映射(ORM)框架,它允许开发者将Java对象与数据库中的表进行映射,从而简化了数据库操作。Hibernate3.2是其一个重要版本,它带来了许多改进和新...

    hibernate3.2 教程和API

    标题"hibernate3.2 教程和API"明确指出,这是一个关于Hibernate 3.2版本的学习资源,包含了教程和官方API文档,主要针对的是Java开发者,他们可能在进行对象关系映射(ORM)或者持久化层的开发。 描述中的“内含...

    hibernate-3.2 源码

    在 Hibernate 3.2 版本中,这个框架已经相当成熟,提供了丰富的功能和性能优化。在这个源码包中,我们可以深入理解Hibernate的工作原理,学习如何构建自己的持久化层。 一、Hibernate架构概述 Hibernate的核心组件...

    hibernate-3.2源码包

    Hibernate提供了两种查询方式:Criteria API和HQL(Hibernate Query Language)。Criteria API允许动态构造查询,而HQL是一种面向对象的查询语言,类似于SQL。源码分析这些查询机制,有助于优化性能和编写更简洁的...

    Hibernate3.2官方中文参考手册

    2. **配置与初始化**:使用Hibernate3.2前,需要配置SessionFactory,这通常涉及到数据库连接信息、缓存策略、事务管理等。在`hibernate.cfg.xml`中,你可以设置JDBC连接参数,如URL、用户名、密码,以及方言...

    Hibernate3.2 中文文档.

    1. **配置文件**:`hibernate.cfg.xml`是Hibernate的主要配置文件,包含了数据库连接信息、缓存设置以及实体类的路径等,是初始化Hibernate环境的基础。 2. **实体类**:这些是与数据库表相对应的Java类,通常使用...

    hibernate3.2中文教程

    《Hibernate3.2中文教程》是一份针对Java开发者的重要学习资源,主要讲解了如何使用Hibernate 3.2这个流行的持久化框架。Hibernate是Java平台上的一款开源对象关系映射(ORM)框架,它允许开发者用面向对象的方式来...

    Hibernate 3.2 中文参考

    - **查询语言**:熟练使用Hibernate Query Language (HQL)进行复杂的数据检索,了解SQL与HQL的区别和联系,以及如何构建高效的查询语句。 - **事务管理**:理解Hibernate事务机制,包括如何控制事务边界、隔离级别...

    hibernate3.2API 开发手册 JAR包

    Hibernate 3.2 API 开发手册 JAR 包是一个针对Java开发者的重要资源,它提供了对Hibernate ORM框架3.2版本的全面文档和类库。Hibernate是Java领域内广泛使用的对象关系映射(ORM)工具,它允许开发人员通过面向对象...

    hibernate3.2之helloword

    【标题】"Hibernate3.2之HelloWorld"是关于Java持久化框架Hibernate的一个入门教程,主要针对的是Hibernate3.2版本。在这个版本中,Hibernate引入了一些改进和优化,旨在提高性能和开发效率,同时保持其作为对象关系...

    JavaProject测试hibernate3.2的增删改查

    **JavaProject测试hibernate3.2的增删改查** 在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它允许开发者用Java对象来操作数据库,极大地简化了数据操作的复杂性。这个Java项目是针对Hibernate...

    Hibernate3.2官方中文参考手册(精品)

    **Hibernate 3.2 官方中文参考手册** Hibernate 是一个强大的对象关系映射(ORM)框架,它允许Java开发者将数据库操作与业务逻辑层解耦,极大地简化了数据库编程。在Hibernate 3.2版本中,这个框架进一步提升了性能...

Global site tag (gtag.js) - Google Analytics