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);
}
}
}
分享到:
相关推荐
- **Query和Criteria API**:这两者提供了执行查询的方法,包括HQL(Hibernate Query Language)和Criteria API。 - **Entity和Mapping**:实体类代表数据库中的表,而映射文件(.hbm.xml或注解)定义了这些实体与...
- 动态模型:允许开发者使用HQL(Hibernate Query Language)或 Criteria API动态构建查询,提高了代码的灵活性和可维护性。 3. **配置与初始化** - 配置文件(hibernate.cfg.xml):定义数据库连接参数,如URL、...
Struts2、Spring2.5和Hibernate3.2是Java Web开发中经典的三大框架,它们的整合使用在过去的许多年里被广泛应用于企业级应用系统。这个完整的项目提供了从开发环境到运行环境的所有必要组件,包括数据库脚本,使得...
7. **查询语言(HQL)**:Hibernate Query Language是Hibernate 提供的面向对象的查询语言,类似于SQL,但操作的是对象和属性,而非表和列。 8. **Criteria查询**:另一种查询方式,通过Criteria API构建动态查询,...
2. **Configuration类**:Hibernate的初始化工作主要由Configuration类完成,它负责读取配置文件,建立SessionFactory,并且可以加载Hibernate的映射文件(.hbm.xml)。 3. **SessionFactory**:SessionFactory是...
Hibernate 3.2 是一个非常重要的Java持久化框架版本,它极大地简化了数据库与Java对象之间的交互。这个源代码包提供了深入理解Hibernate工作原理的机会,同时也包含对应的.jar包,使得开发者可以直接在项目中使用。...
《深入剖析Hibernate 3.2源代码》 Hibernate是一个开源的对象关系映射(ORM)框架,它极大地简化了Java应用程序与数据库之间的交互。在Hibernate 3.2版本中,开发者们能够更深入地理解其内部机制,从而提高开发效率...
**hibernate3.2 开发API+源码参考** Hibernate是一个开源的对象关系映射(ORM)框架,它允许开发者将Java对象与数据库中的表进行映射,从而简化了数据库操作。Hibernate3.2是其一个重要版本,它带来了许多改进和新...
标题"hibernate3.2 教程和API"明确指出,这是一个关于Hibernate 3.2版本的学习资源,包含了教程和官方API文档,主要针对的是Java开发者,他们可能在进行对象关系映射(ORM)或者持久化层的开发。 描述中的“内含...
在 Hibernate 3.2 版本中,这个框架已经相当成熟,提供了丰富的功能和性能优化。在这个源码包中,我们可以深入理解Hibernate的工作原理,学习如何构建自己的持久化层。 一、Hibernate架构概述 Hibernate的核心组件...
Hibernate提供了两种查询方式:Criteria API和HQL(Hibernate Query Language)。Criteria API允许动态构造查询,而HQL是一种面向对象的查询语言,类似于SQL。源码分析这些查询机制,有助于优化性能和编写更简洁的...
2. **配置与初始化**:使用Hibernate3.2前,需要配置SessionFactory,这通常涉及到数据库连接信息、缓存策略、事务管理等。在`hibernate.cfg.xml`中,你可以设置JDBC连接参数,如URL、用户名、密码,以及方言...
1. **配置文件**:`hibernate.cfg.xml`是Hibernate的主要配置文件,包含了数据库连接信息、缓存设置以及实体类的路径等,是初始化Hibernate环境的基础。 2. **实体类**:这些是与数据库表相对应的Java类,通常使用...
《Hibernate3.2中文教程》是一份针对Java开发者的重要学习资源,主要讲解了如何使用Hibernate 3.2这个流行的持久化框架。Hibernate是Java平台上的一款开源对象关系映射(ORM)框架,它允许开发者用面向对象的方式来...
- **查询语言**:熟练使用Hibernate Query Language (HQL)进行复杂的数据检索,了解SQL与HQL的区别和联系,以及如何构建高效的查询语句。 - **事务管理**:理解Hibernate事务机制,包括如何控制事务边界、隔离级别...
Hibernate 3.2 API 开发手册 JAR 包是一个针对Java开发者的重要资源,它提供了对Hibernate ORM框架3.2版本的全面文档和类库。Hibernate是Java领域内广泛使用的对象关系映射(ORM)工具,它允许开发人员通过面向对象...
【标题】"Hibernate3.2之HelloWorld"是关于Java持久化框架Hibernate的一个入门教程,主要针对的是Hibernate3.2版本。在这个版本中,Hibernate引入了一些改进和优化,旨在提高性能和开发效率,同时保持其作为对象关系...
**JavaProject测试hibernate3.2的增删改查** 在Java开发中,Hibernate是一个非常重要的对象关系映射(ORM)框架,它允许开发者用Java对象来操作数据库,极大地简化了数据操作的复杂性。这个Java项目是针对Hibernate...
**Hibernate 3.2 官方中文参考手册** Hibernate 是一个强大的对象关系映射(ORM)框架,它允许Java开发者将数据库操作与业务逻辑层解耦,极大地简化了数据库编程。在Hibernate 3.2版本中,这个框架进一步提升了性能...