@transactional服务在春季应该是单例还是原型?

问题描述 投票:0回答:1

如果服务层类是单例,在春季交易管理会成为问题吗?还是应该是原型?

java spring singleton prototype spring-transactions
1个回答
0
投票

不,那应该不是问题。 @Transactional注释将执行的操作是将Transaction生命周期绑定到当前线程。因此,每个新线程将在单独的事务中运行。

因此,当您的方法被调用时,Spring会将该方法调用包装到Transaction中,因此在单线程上下文中,如果调用成功,则事务将启动并提交,如果发生异常,则将回滚(取决于您的配置)抛出。

在多线程上下文中,每个线程将在单独的事务中运行。

© www.soinside.com 2019 - 2024. All rights reserved.