- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在设计数据库和实体。我需要为某些实体定义共享生命周期操作。
我可以在接口(interface)上注释 @EntityListeners
以便实现该接口(interface)的实体影响吗?
@EntityListeners({StorageObjectOwnerListener.class})
public interface StorageObjectOwner {
}
public class StorageOwnerOwnerListener {
@PreRemove
private void onPreRemove(final Object object) {
}
}
现在任何实体工具都会受到影响。
public class MyEntity implements StorageObjectOwner {
// will StorageObjectOwnerListener take action?
}
最佳答案
我已经用 JPA 2.1 试过了。可悲的是,它似乎只适用于实体。因此,如果您的想法是使用一个接口(interface),甚至是一个不是实体的父类(super class),它就不会起作用。
When annotations are used, one or more entity listener classes are denoted using the EntityListeners annotation on the entity class or mapped superclass.
但是您可以使用默认监听器(在 XML 配置中设置)。这样它会触发任何被移除的对象。您必须使用 object instanceof StorageObjectOwner
过滤它们。
关于jpa - 我可以在接口(interface)上注释@EntityListener 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38713190/
我有一堂这样的课: @Entity @Customizer(value=UsuarioCustomizer.class) @Indexes({ @Index(name="idx_login_s
我有一个带有注释的实体 @EntityListener(MyListener.class) 在 MyListener 类中,我有一个用 注释的方法 @PrePersist 在这个方法中,我是否有在实体
我有一个带有 EmebeddedId 的实体。实体上的实体监听器(加载时去除 Strings 上的空白)按预期被触发,id Embeddable 上的同一监听器根本没有被触发。 我做错了吗?如何修复?
伙计们! 如果我定义一个实体类并用 @MappedSuperclass 注释它和一个 @EntityListener ,在子类中是否还会调用监听器来处理生命周期事件? 例子: @MappedSuper
当我尝试启动服务器 JBoss 7.0 时遇到问题,因为抛出错误。当将entityListiner放在Entity上时会发生这种情况。 是否可以注入(inject)实体监听器? 跟踪: MSC0000
我们有一个仅包含实体和 persistence.xml 的持久性存档。我们有一个包含 ejb 内容的 ejb 模块。 现在,对于特定用例,我们需要添加一个 EntityListener,它可以访问服务
假设我有这个类(class): @EntityListeners({MyListener.class}) class MyClass { String name; String surname
1、简介 1.1 @entitylisteners 官方解释:可以使用生命周期注解指定实体中的方法,这些方法在指定的生命周期事件发生时执行相应的业务逻辑。 简单来说,就是监听实体对象的增删改查
我有一个与 customerBudget 实体有关联的客户。 CustomerEntityListener 将创建一个 customerBudget 实体。 我收到以下错误: IllegalState
我有一个看起来像这样的 JPA 实体。请注意 @EntityListeners 注释: import javax.persistence.EntityListeners; import org.spr
我有一个 Application 对象和一些 Form 对象。每次保存表单时,我想更新Application.lastUpdated。应用程序有一个 EntityListener,我想用它来设置 Ap
我有以下 JPA 实体 - 规则和策略。我希望如此,因此对规则的任何更新都将设置策略的最后修改日期。几个小时后,我发现我无法从 EntityListener 中调用实体管理器。 因此,我的问题是更新规
我已经创建了实体监听器 public class SomeListener { @PrePersist @PreUpdate public void someAction(fi
我正在设计数据库和实体。我需要为某些实体定义共享生命周期操作。 我可以在接口(interface)上注释 @EntityListeners 以便实现该接口(interface)的实体影响吗? @Ent
如上所述 - 如果持久调用失败,我们已经修改了模型,这意味着我们正在使用(现在已修改,但由于异常而实际上并未持久化)模型。如果这是在服务层而不是 EntityListener 中,那么我们实际上可以在
我知道 JSR-000220 Enterprise JavaBeans 3.0 Final Release(持久性)规范指出: “一般来说,可移植应用程序不应调用 EntityManager 或 Qu
我需要在 EntityListener 类中注入(inject) EntityManager,以便我可以对其执行 CRUD 操作。 POJO: @Entity @EntityListner(Audit
我使用 @EntityListeners 在保存到 Db 之前和加载之后进行操作。在我的 Listener 类中,我调用了一个 Ecryptor(它需要从配置文件中获取信息),因此不能静态调用加密器,
我正在尝试构建一个基于Restfull和Jersey1.17的Web服务。部署在Tomcat服务器上。 在我的项目中,我需要使用 hibernate4 来与我的 Oracle 11g XE 数据库进行
我有一个实体监听器,用于查找选定实体的更改。 @PostUpdate @PostPersist void onChange(RhEntity data) { InjectHelper.getI
我是一名优秀的程序员,十分优秀!