1.父子关系的级联(cascading)操作准确语义如下:
•如果父对象被 persist(),那么所有子对象也会被 persist()
•如果父对象被 merge(),那么所有子对象也会被 merge()
•如果父对象被 save(),update() 或 saveOrUpdate(),那么所有子对象则会被 saveOrUpdate()
•如果某个持久的父对象引用了瞬时(transient)或者脱管(detached)的子对象,那么子对象
将会被 saveOrUpdate()
•如果父对象被删除,那么所有子对象也会被 delete()
•除非被标记为 cascade="delete-orphan"(删除“孤儿”模式,此时不被任何一个父对象引用的
子对象会被删除),否则子对象失掉父对象对其的引用时,什么事也不会发生。如果有特殊需
要,应用程序可通过显式调用 delete() 删除子对象。
=================================================================================
2.对 update 的调用使一个脱管对象重新持久化,你可以说它被绑定到一个新的单元操作上,所以在
脱管状态下对它所做的任何修改都会被保存到数据库里。这也包括你对这个实体对象的集合所作
的任何改动(增加/删除)。
分享到:
相关推荐
《Hibernate需要注意的问题与数据源配置详解》 在Java企业级开发中,Hibernate作为一种流行的ORM(对象关系映射)框架,极大地简化了数据库操作。然而,使用Hibernate的过程中,开发者需要特别注意一些关键点,以...
需要注意的是,如果你不希望生成SessionFactory工具类,可以在配置时取消勾选。 5. **项目配置**: 对于MyEclipse项目,可能需要在`.project`文件中添加Hibernate的nature,确保能够正确识别和处理Hibernate相关...
合理利用缓存能提高性能,但需注意缓存一致性问题。 7. **性能优化**:包括延迟加载(Lazy Loading)、批处理(Batch Processing)、缓存策略调整等,这些都可以提升Hibernate应用的性能。 8. **查询优化**:避免N...
Hibernate3 是一个强大的Java持久化框架,它允许开发者将数据库操作与业务逻辑解耦,使得应用程序的开发更为简便。...但要注意,使用前需阅读并遵守jboss-LICENSE.txt中的许可条款,确保合法合规使用。
然而,值得注意的是,尽管Middlegen简化了开发流程,但其自动生成的代码可能并不完全符合项目的特定需求,因此在实际使用中,往往需要对生成的代码进行适当的调整和优化。 总结来说,Hibernate扩展Middlegen-...
然而,也需要注意到,过度依赖ORM可能导致性能问题,因此在设计大规模应用时,需要合理使用ORM并结合原生SQL进行优化。 总之,这个“Hibernate驱动包”是Java开发中的重要工具,为开发者提供了强大的数据库操作支持...
注意,不应使用final修饰类,因为这将影响Hibernate的动态代理机制。 2. 持久对象标识OID Hibernate通过对象标识(OID)来区分不同的持久化对象,它相当于数据库中的主键,使得对象与数据库记录一一对应。 总结:...
但需注意N+1查询问题。 3. **缓存机制**: Hibernate支持一级缓存(Session级别的缓存)和二级缓存(SessionFactory级别的缓存),提升数据读取速度。 4. **对象状态管理**: Hibernate管理对象的瞬时、持久化、托管...
根据提供的文件信息,我们可以深入探讨Hibernate中的连表查询方法及其应用。下面将详细介绍与标题、描述及部分代码相关的...需要注意的是,在编写连表查询时要充分考虑性能问题,避免因查询复杂度过高而导致性能瓶颈。
- 使用IDEA内置的JAR包(注意IDEA内置版本可能不是最新)。 - 自动导入JAR包。 对于本项目,推荐使用本地的Hibernate JAR包,这样可以确保使用最新版本的Hibernate。在项目的`lib`目录下,通常包含多个JAR包,但...
本文主要讨论从Hibernate 2升级到Hibernate 3的过程中需要注意的关键步骤,这对于使用SSH(Spring、Struts和Hibernate)框架的项目尤其重要。 首先,升级的第一步涉及替换jar包。将旧版本的Hibernate 2.1.jar替换为...
- 注意事务的隔离级别和回滚规则,确保数据一致性。 - 避免在循环中进行大量的数据库操作,尽量批量处理。 7. **学习资源** - 官方文档:提供详细的API参考和教程。 - 示例代码:通过实际的项目或样例代码来...
《深入剖析Hibernate 4.1.4.Final源码》 Hibernate,作为一款著名的Java对象关系映射(ORM)框架,极大地简化了Java开发者在数据库操作中的工作。它通过提供对象化的数据访问接口,使得开发者可以更加专注于业务...
7. **事务管理**:在整合 Hibernate 和 Ehcache 时,必须注意事务管理,确保缓存与数据库的一致性。通常,缓存更新会在事务提交后进行,以防止脏读。 8. **性能优化**:通过监控和调整 Ehcache 参数,可以进一步...
- **注意事项**:`Session` 不是线程安全的,多个线程共享一个 `Session` 可能会导致数据混乱。可以使用 `ThreadLocal` 变量来解决这个问题,确保每个线程都有自己的 `Session` 实例。 #### 三、使用 Hibernate 的...
以下是在NetBeans下安装Hibernate的详细步骤和注意事项: 一、准备工作 在开始安装之前,确保你的系统已经安装了最新版本的NetBeans IDE,并且是支持Java EE或者Java Web开发的版本。因为Hibernate主要用于处理与...
1. 使用二级缓存:提高数据访问速度,但需注意缓存一致性问题。 2. 慎用JOIN:过多的JOIN可能导致性能下降,可考虑使用子查询或分步查询。 3. 避免大量对象加载:使用游标或分页查询减少内存消耗。 4. 注重事务管理...