事务钩子函数

public class TransactionalSupport implements TransactionSynchronization {

    private Supplier supplier;

    public TransactionalSupport(Supplier supplier) {
        this.supplier = supplier;
    }

    @Override
    public void afterCommit() {
        supplier.get();
    }
}

//业务逻辑事务提交之后再执行日志操作
TransactionalSupport transactionalSupport = new TransactionalSupport(()-> {
    try {
         contextBean.doCommonLogAfterBusiness(finalMap);
    } catch (Exception e) {
         logger.error("日志保存失败,异常信息:{},入参:{},结果:{}",   e.getMessage(),                                         param, result);
         e.printStackTrace();
   }
       return null;
  });
           TransactionSynchronizationManager.registerSynchronization(transactionalSupport);

你可能感兴趣的:(java,html,servlet)