持久化类:
遵循四条主要的规则:
1、实现一个默认(即无参数的)构造方法(constructor)
构造方法可以不是public的,hibernate可以使用ConStructor.newInstance()来实例化它们。强烈建议,在Hibernate中,为了运行期代理的生成,构造方法至少是包内可见的。
2、提供一个标识属性(可选)
映射到数据库表的主键字段。这个属性类型可以是任何的原始类型、原始类型的包装类型、String或是Date。
3、使用非final的类(可选)
代理(proxies)是Hibernate对一个重要的功能,它依赖的条件是,持久类或者是非final的或者是实现了一个所有方法都声明为public的接口。
可以用Hibernate持久化一个没有实现任何接口的final类,但是你不能使用代理来延迟关联加载,这会限制你进行性能优化选择。
也应该避免在非final类中声明public final的方法。如果你想使用一个有public final方法的类,你必须通过设置laze="false"来明确地禁用代理。
4、为持久化字段声明访问器(accessors)和是否可变的标志(mutators)(可选)
属性不需要声明为public的。Hibernate可以持久化一个有default、protected或private的get/set方法对的属性进行持久化。
实现继承:
子类也必须遵守第一条和第二条规则。它从超类集成了标识属性。
实现equals()和hashCode():
如果有如下要求,必须重载equals()和hashCode()方法:
·想把持久类的实例方法Set中
·想重用托管实例
Hibernate保证,仅在特定会话范围内,持久化标识和java标识是等价的。因此,一旦我们混合了从不同会话中获取的实例,如果希望Set有明确的语义,就必须实现equals()和hashCode()。
分享到:
相关推荐
"Hibernate自动生成持久化类和映射文件"这个话题主要涉及如何利用myEclipse这款集成开发环境的反向工程功能,快速地根据数据库中的表结构生成对应的Hibernate配置文件、映射文件以及持久化类。下面将详细介绍这一...
**hibernate持久化技术详解** Hibernate是一款强大的Java对象关系映射(ORM)框架,它为开发者提供了在Java应用中操作数据库的强大工具。通过Hibernate,开发者可以将数据库操作转化为对Java对象的操作,大大降低了...
**标题:Hibernate 操纵持久化对象** 在Java开发中,Hibernate是一个强大的对象关系映射(ORM)框架,它简化了数据库与Java对象之间的交互。本篇将详细讲解如何使用Hibernate来操纵持久化对象,这对于深入理解...
在软件开发领域,尤其是涉及到关系型数据库管理和对象持久化的场景中,Hibernate 是一款广泛应用的Java ORM(对象关系映射)框架。它允许开发者使用面向对象的编程方式来处理数据库操作,极大地简化了数据访问层的...
Hibernate 操作持久化对象是Java开发中用于简化数据库交互的重要工具。它是一个开源的Java持久化框架,由Gavin King创建,并逐渐发展成为Java世界中主流的持久化解决方案。Hibernate的核心在于提供对象-关系映射(ORM...
Hibernate的核心概念之一就是持久化对象的生命周期,这涉及到对象在数据库中的状态及其与Session的关系。 首先,我们来看一下Hibernate中持久化对象的三种基本状态: 1. **瞬时对象(Transient Objects)**: - ...
总结起来,数据持久化是通过ORM技术如Hibernate和JDO来实现的,它简化了Java应用与数据库之间的交互。Hibernate通过运行时转换POJOs为持久对象,提供了更高的开发效率和灵活性,而JDO则通过编译时增强来优化性能。...
本篇文章将深入探讨Hibernate的数据持久化机制,包括其基本概念、配置、实体类、映射文件以及查询操作。 1. **基本概念** - **对象关系映射(ORM)**: ORM是将关系数据库的数据模型与面向对象编程中的对象模型进行...
1.Hibernate持久化类:Hibernate的持久化类是一个JavaBean(pojo+相应属性的getter和setter方法),该JavaBean最好实现java.io.Serializable接口 2.Hibernate映射文件:Hibernate映射文件是Hibernate与数据库进行持久化...
Hibernate持久化技术在网上购书系统中的设计与实现 Hibernate持久化技术是指使用Hibernate框架来实现数据持久化的技术。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得...
《精通Hibernate:Java对象持久化技术详解》一书聚焦于Java开发中的对象持久化技术,主要围绕Hibernate这一流行ORM框架进行深入探讨。Hibernate是Java世界里的重要工具,它简化了数据库操作,使得开发者可以更加专注...
《精通Hibernate:Java对象持久化详解》是一本深入解析Hibernate技术的专著,它主要针对Java开发者,旨在帮助他们理解和掌握Java对象持久化的精髓。Hibernate作为一款强大的对象关系映射(ORM)框架,极大地简化了...
hibernate的知识:持久化类(Persistent Classes)、对象关系数据库映射基础(Basic OR Mapping)、集合类(Collections)映射、关联关系映射、拦截器与事件(Interceptors and events)等。
5. **持久化操作** 使用Hibernate进行CRUD操作非常直观。例如,通过Session的save()方法可以保存新对象到数据库,update()方法更新已存在的对象,delete()方法删除对象,而find()或get()方法用于根据主键检索对象。...
Hibernate持久化技术在网上购书系统中的设计与实现 本资源是基于Hibernate持久化技术在网上购书系统中的设计与实现的毕业论文,涵盖了Hibernate的概念、原理、架构、核心接口、持久化功能等方面的知识点。 一、...
"Hibernate持久化技术在网上购书系统中的设计与实现毕业论文" 本文档主要研究了Hibernate持久化技术在网上购书系统中的设计与实现。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象...
"Hibernate持久化技术在网上购书系统中的设计与实现" 本论文主要研究Hibernate的ORM(Object Relationship Mapping)框架、持久化功能以及Hibernate中的六个核心接口Session、SessionFactory、Transaction、Query、...
1. 提交事务:所有操作完成后,调用Transaction的commit()方法提交事务,确保数据的持久化。 2. 关闭资源:操作完毕后,记得关闭Session和SessionFactory,释放资源,防止内存泄漏。 八、缓存机制 1. 第一级缓存:...
在Struts中,循环显示List中的数据使用什么标签? 如何使用MVC模式组织Java Web应用? 程序的DAO层(数据访问层)完成什么任务?
"java-hibernate持久化"这个主题主要关注如何使用Hibernate来管理对象的生命周期和状态,以及其内部的一级缓存机制。 首先,我们讨论Hibernate中的持久化对象状态。这些状态定义了对象与Hibernate Session的关系,...