一、SpringMVC对包的扫描范围扩大

SpringMVC默认只会扫描@Controller,@Service,@Repository和@Component注解的类,当我们想要扩大扫描范围的时候,就需要使用@ComponentScan注解来实现。

@ComponentScan注解可以指定要扫描的包路径,这样可以让SpringMVC更加灵活,可以扫描更多的类,从而让我们的应用更加完善。

二、事务配置不生效

当SpringMVC对包的扫描范围扩大后,就会出现事务配置不生效的问题。这是因为SpringMVC在扫描类的时候,不会去扫描@Transactional注解。

因此,当我们在使用@ComponentScan注解扩大SpringMVC的扫描范围时,就会出现事务配置不生效的问题。

三、解决方案

要解决这个问题,我们可以使用@EnableTransactionManagement注解,这个注解可以让SpringMVC去扫描@Transactional注解,从而使事务配置生效。

例如:

在上面的代码中,我们使用@EnableTransactionManagement注解,这样就可以让SpringMVC去扫描@Transactional注解,从而使事务配置生效。