我使用的是spring-data-mongodb,我想将审核日志作为一个单独的集合存储在MongoDB中,该集合将计数中的每个创建,更新和删除操作。
是否有像Spring Boot AuditingEntityListener这样的解决方案使用@ PostPersist,@ PostUpdate,@ PostRemove。
对于上述情况,我还在尝试
@Component
public class MongoListener extends AbstractMongoEventListener<Account>
{
@Override
public void onAfterSave(AfterSaveEvent<E> event) {
if (LOG.isDebugEnabled()) {
LOG.debug("onAfterSave({}, {})", event.getSource(),
event.getDocument());
}
AuditLog auditLog = new AuditLog();
auditLog.setEventType(AuditAction.CREATE.value());
auditLog.setCommitVersion(1);
auditLog.setNewValue(event.getSource());
auditLog.setOldValue(event.getSource());
auditLogRepository.save(auditLog);
}
但是在这里它会多次存储数据,直到给出db数据溢出异常为止。
对于生成此自定义审核日志的任何帮助,将enter code here
非常感谢。