春季启动,带有调度的事务性工作

时间:2019-04-17 17:08:03

标签: java spring proxy transactions

据我所知,Spring Boot默认情况下会生成cglib代理。而且,如果我的方法有两个创建代理的注释,则其中只有一个可用。这是我的考试班

@Service
public class Test{

    private final TxnAddressRepository repository;

    private final CoinRepository coinRepository;


   @Transactional
    @Scheduled(fixedDelay = 1000)
    public void test() {
        final TransactionStatus transactionStatus = TransactionAspectSupport.currentTransactionStatus();
        System.out.println("HERE");
        this.repository.save(new TxnAddress(coinRepository.getOne(4L), hey.append("hey").toString()));
    }

}

但是两个注释都适用于此方法,它每秒安排一次,并且(((DefaultTransactionStatus)transactionStatus).newTransaction 向我展示了真实情况。 (视图中的打开会话被禁用)

为什么起作用? (春季启动版本2.1.2.RELEASE)

0 个答案:

没有答案