如果服务层类是单例,在春季交易管理会成为问题吗?还是应该是原型?
不,那应该不是问题。 @Transactional注释将执行的操作是将Transaction生命周期绑定到当前线程。因此,每个新线程将在单独的事务中运行。
@Transactional
因此,当您的方法被调用时,Spring会将该方法调用包装到Transaction中,因此在单线程上下文中,如果调用成功,则事务将启动并提交,如果发生异常,则将回滚(取决于您的配置)抛出。
在多线程上下文中,每个线程将在单独的事务中运行。