- 浏览: 102641 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
zhouhz11862:
在jboss 7.1下会报错,找不到client这个目录
Ant 部署EJB的配置文件:build.xml配置 -
hongmeikaile:
写的很好,对我有帮助
Servlet中的重定向和请求分派
public class SessionTest extends TestCase { public void testSave1() { Session session = null; Transaction tx = null; try { session = HibernateUtils.getSession(); tx = session.beginTransaction(); // 临时状态 User user = new User(); user.setName("张三"); user.setPassword("123"); // 持久态 session.save(user); user.setName("李四"); tx.commit(); } catch (Exception e) { if (tx != null) { tx.rollback(); } e.printStackTrace(); } finally { HibernateUtils.closeSession(session); } } public void testSave2() { Session session = null; Transaction tx = null; try { session = HibernateUtils.getSession(); tx = session.beginTransaction(); // 临时状态 User user = new User(); user.setName("张三"); user.setPassword("123"); // 持久态 session.save(user); user.setName("李四"); tx.commit(); } catch (Exception e) { if (tx != null) { tx.rollback(); } e.printStackTrace(); } finally { HibernateUtils.closeSession(session); } } public void testSave3() { Session session = null; Transaction tx = null; User user = null; try { session = HibernateUtils.getSession(); tx = session.beginTransaction(); // 临时状态 user = new User(); user.setName("张三"); user.setPassword("123"); user.setCreateTime(new Date()); user.setExpireTime(new Date()); // 持久态 session.save(user); user.setName("李四"); tx.commit(); } catch (Exception e) { if (tx != null) { tx.rollback(); } e.printStackTrace(); } finally { HibernateUtils.closeSession(session); } // 托管状态 user.setName("王五"); try { session = HibernateUtils.getSession(); session.beginTransaction(); // 将detached状态的对象重新纳入session管理 // 此时将变为persistent状态的对象 session.update(user); session.getTransaction().commit(); } catch (Exception e) { e.printStackTrace(); session.getTransaction().rollback(); } finally { HibernateUtils.closeSession(session); } } Transeint * 没有被session管理 * 在数据库中没有与之匹配的记录 Persistent * 纳入session管理 * 在数据库中有与之匹配的记录 * 当属性发生改变,在清理缓存时(脏数据检查)会自动和数据库同步 Detached * 没有被session管理 * 在数据库中存在与之匹配的记录
发表评论
-
Java类中加载Spring中的ApplicationContext.xml文件的方式
2011-12-29 14:44 12312<1>、利用ClassPathXmlApplica ... -
BeanFactory提供的方法调用
2011-10-04 23:40 1041boolean contains(String):如果Bean ... -
EJB中实体Bean重载equals()和hashCode()的原因
2011-10-01 10:23 1283在对数据库操作中,通常会根据主键或唯一字段来判断得到的记录是否 ... -
Ioc 实现策略
2011-09-14 21:58 880Ioc 实现策略: 1、依赖查找:容器中的受控对象通过容器的 ... -
Spring中ClassPathXmlApplicationContext与FileSystemXmlApplicationContext
2011-09-07 21:43 1171ClassPathXmlApplicationContext与 ... -
Spring中对于Hibernate的管理
2011-08-31 22:37 911jdbc.properties文件: driverCl ... -
Spring事务的隔离级别
2011-08-21 20:58 7361. ISOLATION_DEFAULT: 这是一个 ... -
事务的传播特性
2011-08-21 20:55 7501. PROPAGATION_REQUIRED: 如 ... -
hibernate的lazy策略
2011-05-13 21:33 857hibernate的lazy策略可以使用在: <cla ... -
Hibernate 中cascade
2011-05-08 22:23 708cascade指两个对象之间的操作的联动关系,对一个对象操作时 ... -
hibernate get方法/load方法
2011-05-08 15:23 886get加载上来的对象为持久对象 执行get会马上发出查询语句 ... -
hibernate中list与iterate区别
2011-04-10 23:23 929list和iterate的区别? list: 默认 ... -
Struts中的LookupDispatchAction
2011-04-04 10:53 927LookupDispatchAction主要是通过请求参数来决 ... -
validate.xml
2011-04-02 21:30 905<!DOCTYPE form-validation PU ... -
ActionForm中的表单跨页
2011-04-02 18:51 974<?xml version="1.0" ... -
自定义标签
2011-04-01 16:39 900<?xml version="1.0" ... -
struts中<html:link></html:link>四种用法
2011-04-01 08:44 787<html:link page=&quo ... -
Struts1中struts-config.xml配置
2011-03-31 10:48 1236<?xml version="1.0" ... -
hibernate annotation
2011-03-30 09:49 876hibernate annotation主要是利用JPA的接口 ... -
Struts2中的结果类型_result_type
2011-03-19 16:37 916Struts2中Result结果类型: <?xml v ...
相关推荐
在Java的持久化框架Hibernate中,对象存在三种不同的状态,分别是持久态(Persistent)、自由态(Transient)和游离态(Detached)。这三种状态分别对应了对象与数据库的关联程度,理解它们对于高效地使用Hibernate...
以下是Hibernate对象的三种主要状态及其特点: 1) 临时状态(Transient State): 当通过`new`关键字创建一个新的对象时,该对象处于临时状态。在这个状态下,对象并未与任何Session关联,因此它的变化不会自动反映...
在Java的持久化框架Hibernate中,对象的状态管理是其核心特性之一...总之,理解Hibernate中对象的三种状态以及它们之间的转换对于开发人员来说至关重要。熟练掌握这些概念有助于编写出更加高效、可靠的Java持久化代码。
hibernate中session对象的状态详解
以下是 Hibernate 中对象的三种状态以及相关的保存方法: 1. **瞬时对象(Transient Objects)** - 当使用 `new` 关键字创建一个对象时,它处于瞬时状态。这种状态的对象与数据库中的任何记录没有关联,只存在于...
在 Hibernate 中,对象有三种不同的状态,这些状态决定了对象与数据库之间的关联程度以及如何进行数据操作。理解这些状态对于有效地使用 Hibernate 至关重要。 1. **瞬时态(Transient)**: - 瞬时态的对象是刚刚...
1. Hibernate对象的三种状态: - Transient(瞬态):这是对象的初始状态,对象在内存中独立存在,没有与任何Session关联,也没有持久化标识,即没有与数据库中的记录对应。对瞬态对象的修改不会自动同步到数据库。...
Hibernate对象有三种状态:瞬时状态(Transient)、持久状态(Persistent)和脱管状态(Detached)。理解这些状态对于优化数据操作和避免潜在的问题至关重要。 首先,瞬时状态(Transient)是指通过new关键字创建的...
一、Hibernate对象三状态 1. 游离态(Detached):对象在应用程序中创建,但尚未与Session关联。对象的状态和数据库中的记录可能不一致。 2. 瞬时态(Transient):对象刚被创建,与Session关联,但尚未持久化到...
以下是关于Hibernate中对象的三种状态以及保存方法的详细分析: 1. **对象的三种状态** - **瞬态(Transient)**:对象刚被创建,尚未与任何Session关联,不具备持久化能力。对瞬态对象的修改不会自动同步到数据库...
本篇文章将详细阐述 Hibernate 中对象的三种状态——临时状态、持久化状态和游离状态,以及 Session 缓存的工作原理。 1. Session 缓存及作用 Session 是 Hibernate 提供的一个接口,它充当了应用程序与数据库之间...
理解Hibernate的对象状态对于有效地进行数据库操作至关重要。正确管理对象状态可以避免数据丢失、重复插入或其他数据库一致性问题。在开发过程中,应该注意何时创建、保存、更新和删除对象,以及它们与Session的关系...
持久化状态是指已经被添加到当前 Session 缓存中的对象状态。一旦对象变为持久化状态,Hibernate 就会对其进行跟踪,并在适当的时候更新或删除数据库中的数据。例如: ```java // 获取 Session Session session = ...
首先,我们要了解Hibernate定义的三种实体状态: 1. **临时状态(Transient)**:当我们在程序中通过`new`关键字创建一个实体对象时,它默认处于临时状态。此时,对象未被Hibernate管理,即使对象包含了主键ID,如果...
在本教程中,我们将深入探讨实体对象的三种状态以及`saveOrUpdate`方法的工作原理。 首先,让我们了解实体对象的三种状态: 1. **瞬时状态(Transient)**:当一个新的实体对象在内存中创建,但尚未被Hibernate...
2. Hibernate对象的三种状态: -瞬时态(Transient):对象刚刚被创建,尚未与Session关联,也没有持久化到数据库中。如果对象在这个状态下被垃圾收集器回收,那么对象的信息将会丢失。 -持久态(Persistent):...
首先,我们来看一下Hibernate中持久化对象的三种基本状态: 1. **瞬时对象(Transient Objects)**: - 当使用`new`关键字创建一个新的Java对象时,该对象是瞬时的。这意味着它们与数据库没有任何关联。如果对象...
Hibernate提供了四种对象状态:瞬时态、持久态、脱管态和临时态,理解这些状态对于有效操纵持久化对象至关重要。 **三、配置Hibernate** 在开始操纵持久化对象之前,需要先配置Hibernate。这包括编写Hibernate配置...
在Java开发中,持久化是将应用程序中的对象状态保存到持久存储介质(如数据库)的过程。Hibernate通过提供一种对象-关系映射机制,使得Java对象可以直接与数据库表进行交互,而无需编写大量的SQL语句。这种映射机制...
在Hibernate中,对象的状态分为瞬时状态、持久状态和脱管状态。瞬时状态的对象存在于内存中,但未与SessionFactory关联;持久状态的对象已经被持久化到数据库,并且可以通过SessionFactory追踪;脱管状态的对象曾经...