beginTransation(); //
cancelQuery(); //
clear(); // 请缓存
close(); // 关闭session
connection(); // 过时的,废弃的方法;不再推荐使用;
contains( Object object ); //判断缓存中是否包含对象;
createCriteria( … ); // 共有四种重载,后续会介绍;
createQuery( String ); // 后续会介绍;
delete( Object ); // 删除某个对象;
evict ( Object ); // 从缓存中清理数据;
flush(); // 同步Session和数据库进行同步;
get( … ); // 用的最多的方法;
session.flush() 不是必须调用的
session.close()是必须调用的
session.clear()写在flush后面 稍后解释
session.flush()的调用牵扯到事务,首先我们知道在执行事务之前都会将AutoCommit设置为false【手动提交方式,因为默认是true自动提交的】 当AutoCommit为false时 我们执行完事务就要调用到session.flush();session.clear();一切处理完后我们要close掉当前的这个session
但是当我们不做事务操作的时候 我们就没必要去调用session.flush()和session.clear()。
直接session.close()就OK 因为这时close会默认调用一次session.flush()。如果使用了ThreadLocal那么就要在close方法里处理一下ThreadLocal。
session.flush()的作用是将数据库与缓存中的数据同步
当session.clear()后才会引起缓存数据变化,这里大家要搞清楚。
以上是看了大虾们对session.flush()和session.close()的解释后自己的一些总结
分享到:
相关推荐
Session是Hibernate中的核心接口,它充当了应用程序和数据库之间的桥梁,负责对象的持久化操作,如保存、更新、删除和查询等。Session通常在一个事务中打开并在事务结束时关闭,以确保数据的一致性和完整性。 然而...
`Session`是Hibernate提供的一种与数据库交互的接口,它扮演着应用程序与数据库之间的桥梁角色。与Web开发中的`HttpSession`不同,`Hibernate Session`与JDBC的`Connection`更为相似,负责处理数据的持久化操作。`...
Hibernate Session是Hibernate的核心接口,它是与数据库交互的主要接口。Session对象负责管理实体对象的状态,包括保存、更新、删除和检索数据。它的生命周期主要包括以下几个阶段: 1. **创建Session**: 当我们...
Hibernate的Session接口是Java应用程序与Hibernate之间主要的运行时交互接口,它提供了对持久化对象的创建、读取和删除操作。Session的概念是基于对象的状态管理和数据库事务的,它的生命周期通常与一个物理事务绑定...
`Session`接口提供了多种方法来与数据库交互,如`save()`, `update()`, `delete()`, `get()`, `load()`以及`createQuery()`等。然而,在实际开发中,我们往往需要根据项目需求对其进行定制,例如添加事务管理、异常...
Hibernate的Session是与数据库交互的主要接口,它负责对象的持久化操作,如保存、更新、删除和查询。Session提供了事务管理和缓存管理的功能,确保了数据的一致性和性能。 1. 增加(Create) 在Hibernate中,增加...
Session 接口是 Hibernate 的核心接口之一,它负责对持久化对象的存取操作。Session 对象是轻量级的,可以被多个线程共享。Session 对象提供了许多方法来操作持久化对象,例如 save、update、delete 等。 4. ...
3. **DAO实现类**:如`UserDAOImpl.java`,实现了`UserDAO`接口,通过Hibernate的Session对象来执行SQL操作。 4. **Service层**:例如`UserService.java`,调用DAO接口进行业务逻辑处理,是业务逻辑层和DAO层的桥梁...
在Java持久化领域,Hibernate无疑占据了举足轻重的地位,而`Hibernate Session`则是其中的核心组件之一,它提供了与数据库交互的主要接口,是对象/关系映射(ORM)的关键部分。本文将深入探讨Hibernate Session的...
### Hibernate的核心接口——Session详解 #### 一、Session简述 **1. Session概念** - **定义**: Session 是 Hibernate 框架中最常用的接口之一,它又被称为持久化管理器。Session 负责所有与数据库交互的工作,...
在Hibernate框架中,Session是与数据库交互的主要接口,它负责对象的持久化操作。然而,由于Session不是线程安全的,所以在多线程环境中管理Session就需要特别注意。本篇文章将详细探讨Hibernate中Session的管理,...
本教程聚焦于Hibernate中的Session接口以及get、load、persist这三个常用的方法,它们是 Hibernate 实现对象-关系映射(ORM)的核心组件。 首先,我们来理解Session接口。Session在Hibernate中扮演着数据库连接的...
在理解Hibernate框架中,Session是核心组件之一,它充当了应用程序和数据库之间的桥梁。`Session`接口提供了多种操作,如创建、更新、查询和删除数据,这些都是基于对象关系映射(ORM)的概念进行的。本篇文章将深入...
在Hibernate中,`Session`充当了应用程序与数据库之间的桥梁,它是持久化操作的主要接口。`Session`负责管理对象的状态,执行SQL语句,并处理事务。当创建一个新的`Session`实例时,它会与数据库建立一个连接。在...
使用Hibernate Session接口,我们可以方便地进行CRUD操作。例如,创建一个新的用户: ```java Session session = HibernateUtil.getSessionFactory().openSession(); Transaction tx = session.beginTransaction...
在文档中,可能会详细介绍Hibernate Session接口,它是与数据库进行交互的主要接口,负责管理对象的状态和事务。Session提供了持久化对象的创建、更新和删除操作,同时也支持事务的开始、提交和回滚。 其次,...
本篇文章主要关注如何通过Hibernate的Session接口来操纵对象,实现数据的持久化。 首先,我们需要理解Session在Hibernate中的角色。Session是Hibernate的核心接口之一,它负责对象的持久化操作,比如保存、更新、...
然后,我们模拟Hibernate的Session接口,这是操作数据库的主要入口。Session提供了保存、删除、更新和查询对象的方法。例如: ```java SessionFactory sessionFactory = Configuration().configure()....
### Hibernate的核心接口与类 在探索Hibernate框架的过程中,掌握其核心接口与类是至关重要的一步。Hibernate作为一种流行的Java持久层框架,提供了丰富的API来简化对象关系映射(ORM)。本文将详细阐述Hibernate的...
2. **Session接口**: Session是与数据库进行交互的前线接口,它模拟了JDBC的Connection。Session提供了持久化对象的保存、更新、删除以及检索等操作。此外,Session还支持事务管理,可以使用beginTransaction()、...