在使用spring mvc时,我使用了@Service这样的注解, 发现使用注解@Transactional声明的事务不起作用

问题出现的场景:

在使用spring mvc时,我使用了@Service这样的注解, 发现使用注解@Transactional声明的事务不起作用。

我的配置如下:

 
       
   


   

原因是

component-scan和事务所在的上下文不一样,component-scan所在的配置是由servlet加载的,事务所在的配置文件是由Listener加载的。

我的解决方法

按照下面的配置,在应用启动时,不让spring扫描到@Service注解的类,servlet的配置文件中这样写:


 


listener的上下文中增加:


你可能感兴趣的:(j2ee)