首页 > 解决方案 > 使用 JPA 审计的 Autowired Repository 为空

问题描述

我正在尝试通过postpersist或我的transactional实体在 audit_trial 表中插入审计记录。但是,auditrial即使我提供了autowired. 下面是我的代码。请建议我在代码中缺少的内容。

@Service
@Transactional
public class AuditEventListener {

    @Autowired
    private AuditTrialRepository auditTrialRepository;

@PostPersist
    public void saveInsertAudit(Object object) throws JsonProcessingException {

        AuditTrial auditTrial = new AuditTrial();
        auditTrial.setAction(INSERT);
        ObjectMapper mapper = new ObjectMapper();

        if (null != object) {
            auditTrial.setModule(getModule(object));
            String json = mapper.writeValueAsString(object);
            if (null != json) {
                auditTrial.setAfterImage(json);
                auditTrialRepository.save(auditTrial);
            }
        }

}



@Repository
public interface AuditTrialRepository extends JpaRepository<AuditTrial, Long> {

}

标签: spring-bootspring-data-jpaaudit

解决方案


推荐阅读