0
我有一个类SubscriptionProduct extends AbstractProduct。从继承实体调用JPA回调
@Entity
@Table(name = "AbstractProduct")
@EntityListeners(Auditable.class)
@Inheritance(strategy = InheritanceType.JOINED)
public abstract class AbstractProduct implements Serializable{
int code;
}
@Entity
@EntityListeners(Auditable.class)
@Table(name="SubscriptionProduct")
public class SubscriptionProduct extends AbstractProduct {
String description
}
我想在创建实体时创建日志条目。 我写了一个名为EntityListenerclass Auditable.class
public class Auditable {
@PostPersist
public void createLogAfterSave(Object O) {
Session session = createLocalSession();
ActivityLog log = new ActivityLog();
log.setTablename(O.getClass().getAnnotation(Table.class).name());
log.setNewValue(O.toString());
log.setOperation("Create");
log.setOldValue(" ");
session.save(log);
}
}
现在即使我期待两行之一subscriptionproduct,一个用于abstractproduct.Two次createLogAfterSave获取调用与SubscriptionProduct。
感谢您的答复。通过反射,我可以找到父类表名,但我如何找到父类中的字段的值。对于表的每个条目我想保存到该表中的日志值。 – mohanaki