Query接口主要实现使用HQL或SQL语句查询数据列表.
public void testByQuery() {
Session session = null;
Transaction ts = null;
try {
session = HibernateUtils.getSession();
ts = HibernateUtils.getTransaction(session);
// 创建一个Query,这个参数就是HQL语言.
// form User的意思就是查询User这个对象.
Query query = session.createQuery("form User");
// 获得数据列表.不需要在list中一个个添加数据了.
List userList = query.list();
for(Iterator iterator = userList.iterator(); iterator.hasNext();) {
User user = (User)iterator.next();
System.out.println(user.getId());
System.out.println(user.getName());
}
ts.commit();
}catch(Exception e) {
e.printStackTrace();
ts.rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
使用Query进行分页显示
public void testByQuery() {
Session session = null;
Transaction ts = null;
try {
session = HibernateUtils.getSession();
ts = HibernateUtils.getTransaction(session);
Query query = session.createQuery("form User");
// 起始页.
query.setFirstResult(0);
// 每页显示多少行.
query.setMaxResults(2);
List userList = query.list();
for(Iterator iterator = userList.iterator(); iterator.hasNext();) {
User user = (User)iterator.next();
System.out.println(user.getId());
System.out.println(user.getName());
}
ts.commit();
}catch(Exception e) {
e.printStackTrace();
ts.rollback();
}finally {
HibernateUtils.closeSession(session);
}
}
执行后就会显示数据表中的最前面两条数据.
分享到:
相关推荐
在 Hibernate 中,有五个核心接口扮演着至关重要的角色,它们分别是 Session、SessionFactory、Transaction、Query 和 Configuration。 这些核心接口共同构成了 Hibernate 的基本架构,并且是理解和使用 Hibernate ...
Session接口的find()方法也具有数据查询功能,但它只是执行一些简单的HQL查询语句的快捷方法,它的功能远没有Query接口强大。 Hibernate的五个核心接口是Hibernate应用的基础,了解它们对于深入理解Hibernate非常...
3.1 Session接口:解析Session的作用,如何创建和关闭Session,以及其在保存、更新、删除和查询对象中的应用。 3.2 CRUD操作:演示如何使用Hibernate实现创建(Create)、读取(Read)、更新(Update)和删除...
2. 关闭资源:操作完毕后,记得关闭Session和SessionFactory,释放资源,防止内存泄漏。 八、缓存机制 1. 第一级缓存:Session内部维护的缓存,保存了Session生命周期内的对象,自动管理读写操作。 2. 第二级缓存:...
5. Query/Criteria:查询接口,提供HQL(Hibernate查询语言)和Criteria API进行数据检索。 三、Hibernate工作流程 1. 加载配置:通过Configuration读取hibernate.cfg.xml文件,设置数据库连接等参数。 2. 创建...
五、Hibernate主要接口和类 1. hibernate.cfg.xml常用配置 配置文件包含数据库连接信息、缓存策略、查询优化等多个方面的设置,例如:数据库URL、用户名、密码、方言、缓存提供商等。 2. Configuration 这是初始...
- **Session**: 执行CRUD操作的主要接口。 #### 八、Hibernate高级特性 - **XDoclet与Hibernate映射**: XDoclet是一种注释处理器,可用于自动生成Hibernate映射文件。 - **数据检索**: - **CriteriaQuery**: 提供...
1. Session接口:它是与数据库交互的主要接口,用于保存、更新、删除和查询对象。 2. CRUD操作:Create(创建)、Read(读取)、Update(更新)和Delete(删除)是数据库操作的基础,Hibernate通过Session提供了...
1. Hibernate ORM API:这是Hibernate的核心,包括Session、SessionFactory等关键接口,用于管理对象的生命周期和数据库事务。 2. Configuration:配置对象,负责读取Hibernate的配置文件(hibernate.cfg.xml),并...
1. Session接口:是与数据库交互的主要接口,提供了保存、更新、删除对象以及执行查询等方法。 2. Query和Criteria API:用于执行HQL(Hibernate Query Language)和Criteria查询,提供更灵活的数据检索方式。 3. ...
**Hibernate 是一个强大的Java持久化框架,用于简化数据库操作。它允许开发者以对象关系映射(ORM)的方式处理数据,将数据库操作转化为面向对象的方法调用。本篇内容将通过丰富的实例来深入探讨Hibernate的核心概念...
Hibernate API是Hibernate框架的核心,它包含了一系列的类和接口,如Session、SessionFactory、Query等,这些都构成了与数据库交互的基础。通过阅读3.6.0版本的Javadoc,我们可以了解到每个类和接口的用途及其使用...
4. **查询(Query)**:通过Session的createQuery()或createSQLQuery()方法,执行HQL(Hibernate Query Language)或原生SQL查询。 **知识点七:事务处理** 由于数据库操作通常涉及多条语句,因此需要使用...
2. 缓存:Hibernate提供了第一级缓存(Session级别的)和第二级缓存(SessionFactory级别的),提高数据访问效率。 七、事务处理 Hibernate的Transaction接口提供了begin(), commit(), rollback()等方法,实现...
1. HQL(Hibernate Query Language):面向对象的查询语言,类似SQL,但操作的是对象而非表。 2. Criteria API:提供了一种更加面向对象的方式来构建查询,比HQL更灵活,但相对复杂。 六、缓存机制 Hibernate提供...
Hibernate是一个开源的对象关系映射(ORM)框架,它允许Java开发者将数据库操作转换为对象级别的操作,从而简化了数据访问层的开发。在 Hibernate 3.2 版本中,这个框架已经相当成熟,提供了丰富的功能和性能优化。...
4. Query和HQL:Query接口用于执行HQL(Hibernate Query Language),HQL是一种面向对象的查询语言,类似SQL但更贴近Java对象模型。 5. Entity类和映射文件:实体类代表数据库中的表,通过XML映射文件或注解与...
2. **配置文件**:Hibernate的配置文件(hibernate.cfg.xml)用于定义数据源、实体类、JDBC连接参数等,是启动Hibernate的第一步。 3. **实体类(Entity)**:实体类代表数据库表,通过注解或XML映射文件定义其属性...
五、Hibernate的持久化操作 1. 插入:Session的save()或saveOrUpdate()方法可将临时对象持久化到数据库。 2. 更新:调用Session的update()或saveOrUpdate()方法,已存在的持久化对象会被更新。 3. 删除:使用Session...
3. Session接口:Session是与数据库交互的主要接口,用于执行CRUD操作,每个数据库会话对应一个连接。 4. Querying:通过Criteria、HQL(Hibernate Query Language)或JPQL进行查询,提供了强大的查询能力。 5. 第二...