在持久化、更新和删除映射实体之前,我已经制作了触发器来记录操作,但它只在 MySQL 中,所以我认为我必须使用annotations@PostPersist
和.@PostUpdate
@PostDelete
因此,当实体(例如 Category)被持久化时,会抛出一个将信息插入日志表的方法,使用以下 SQL:
INSERT INTO log (date_hour, table, id_tuple, user)
VALUES (NOW(), 'category', " + id + ", '" +
FacesContext.getCurrentInstance().getExternalContext().getRemoteUser() + "')";
我就是这样做的,使用 createNativeQuery 然后 query.executeUpdate() 但什么也没发生。
做我想做的事的最佳方法是什么?提醒我正在使用 EclipseLink。