Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java hibernate上的触发器(可能称为拦截器)_Java_Hibernate - Fatal编程技术网

Java hibernate上的触发器(可能称为拦截器)

Java hibernate上的触发器(可能称为拦截器),java,hibernate,Java,Hibernate,我有一个模块,它使用Hibernate作为ORM解决方案,将EHCache作为二级缓存。 我有另一个单独的模块,用于插入和更新数据库。 我需要的是能够在插入或更新行时触发事件。 假设我有一个Customers表,它被映射到一个Customer实体。 我需要一些程序来通知我新客户已添加。 关于第二个单独的模块,它也使用Hibernate,但至少目前它们没有连接(我指出这一点,好像有人认为我必须在它们之间共享Hibernate会话(或类似的东西),那么我会考虑这一点)。 请注意,我使用Hiberna

我有一个模块,它使用Hibernate作为ORM解决方案,将EHCache作为二级缓存。 我有另一个单独的模块,用于插入和更新数据库。 我需要的是能够在插入或更新行时触发事件。 假设我有一个Customers表,它被映射到一个Customer实体。 我需要一些程序来通知我新客户已添加。 关于第二个单独的模块,它也使用Hibernate,但至少目前它们没有连接(我指出这一点,好像有人认为我必须在它们之间共享Hibernate会话(或类似的东西),那么我会考虑这一点)。 请注意,我使用Hibernate的经验有限。
提前感谢

您可能需要一个Hibernate拦截器

拦截器接口提供 从会话回调到 应用程序,允许应用程序 检查和/或操纵 持久对象的属性 在保存、更新、删除之前 或者是上膛了

这里有一个简单的示例,说明如何编写一个并配置它


还有事件系统,它是SQL级操作的低级挂钩,但这可能比您需要的要复杂一些。

首先感谢您的评论,这个机制不依赖于对我的实体的所有更改都是在同一个会话中生成的吗?正如我的hibernate会话在某些时候可以“突然看到”数据库中的新对象一样