Hibernate通过Lifecycle、Validatable接口制定了实体对象CRUD过程中的回调方式。
Lifecycle接口中的onSave、onUpdate、onDelete方法,如果返回true则意味着需要中止执行相应的操作过程。如果代码运行期间抛出了CallbackException,对应的操作也会被中止。注意,不要试图在这些方法中调用Session进行持久化操作,这些方法中Session无法正常使用。
Validatable.validate方法将在实体被持久化之前得到调用以对数据进行验证。此方法在实体对象的生命周期内可能被数次调用,因此,此方法仅用于数据本身的逻辑校验,而不要试图在此实现业务逻辑的验证。
Hibernate还引入了Interceptor,为持久化事件的捕获和处理提供了一个非侵略性的实现。Interceptor接口定义了Hibernate中的通用拦截机制。Session创建时即可指定加载相应的Interceptor,之后,此Session的持久化操作动作都将首先经由此拦截器捕获处理。简单的加载范例如下:
SessionFactory factory = config.buildSessionFactory();
Interceptor it = new MyInterceptor();
session = sessionFactory.openSession(it);
需要注意的是,与Lifecycle相同,Interceptor的方法中不可通过Session实例进行持久化操作。
分享到:
相关推荐
《深入浅出Hibernate》读书笔记《深入浅出Hibernate》读书笔记《深入浅出Hibernate》读书笔记
深入浅出 Hibernate.pdf
深入浅出hibernate 清晰版
本书内容深入浅出,先讲述持久层设计与ORM,再由Hibernate概述、Hibernate基础Hibernate高级特性顺序展开,直至Hibernate实战,重点讲述了Hibernate的基础语法、基础配置、O/R映射、数据关联、数据检索、HQL实用技术...
本书内容深入浅出,先讲述持久层设计与ORM,再由Hibernate概述、Hibernate基础Hibernate高级特性顺序展开,直至Hibernate实战,重点讲述了Hibernate的基础语法、基础配置、O/R映射、数据关联、数据检索、HQL实用技术...
本书内容深入浅出,先讲述持久层设计与ORM,再由Hibernate概述、Hibernate基础Hibernate高级特性顺序展开,直至Hibernate实战,重点讲述了Hibernate的基础语法、基础配置、O/R映射、数据关联、数据检索、HQL实用技术...
本文是对深入浅出Hibernate学习做的学习笔记,是个人在对深入浅出Hibernate学习中的一点认识和看法
5.2 Hibernate回调与拦截机制 5.3 Hibernate实用技术 第6章 Hibernate 实战——创建RedSaga论坛 6.1 目标 6.2 E-R建模还是对象建模 6.3 E-R建模及工具集 6.4 对象建模 6.5 项目的目录组织和基础设施 6.6 测试...
深入浅出Hibernate
本书内容深入浅出,先讲述持久层设计与ORM,再由Hibernate概述、Hibernate基础Hibernate高级特性顺序展开,直至Hibernate实战,重点讲述了 Hibernate的基础语法、基础配置、O/R映射、数据关联、数据检索、HQL实用...
夏昕的 深入浅出Hibernate>>是一本非常不错的解析Hibernate的书籍
深入浅出Hibernate 作者:夏昕 曹晓刚 7Z压缩:分包一大小18mb、分包二4mb 使用:把两个压缩包一起解压就可以了
夏昕.深入浅出Hibernate经典教程。不容错过
本书内容深入浅出,先讲述持久层设计与ORM,再由Hibernate概述、Hibernate基础Hibernate高级特性顺序展开,直至Hibernate实战,重点讲述了Hibernate的基础语法、基础配置、O/R映射、数据关联、数据检索、HQL实用技术...
高清版本适合新手入门查看《深入浅出Hibernate》.pdf,
深入浅出Hibernate完整版,除了资料外,还包括PPT和类型映射关系图
(假若您希望使用其它用户名如root,您需要修改hibernate的数据库配置中的连接参数——位于hibernate.cfg.xml中,以及创建数据库表时的连接参数——位于build.xml中。) 7, 确认ant安装正确. ant可以在此下载: ...
加了标签的《深入浅出HIbernate》,方便阅读和查找。
深入浅出 Hibernate 电子书 中文