springmvc mybatis 基于全注解事务配置注意事项
2015-05-17 21:22
447 查看
1.spring mvc 自动扫描注解的时候,不去扫描@Service
2.spring 自动扫描注解的时候,不去扫描@Controller
参考:http://blog.sina.com.cn/s/blog_5ddc071f0100uf7x.html。尤其是这段话:
Spring MVC启动时的配置文件,包含组件扫描、url映射以及设置freemarker参数,让spring不扫描带有@Service注解的类。为什么要这样设置?因为servlet-context.xml与service-context.xml不是同时加载,如果不进行这样的设置,那么,spring就会将所有带@Service注解的类都扫描到容器中,等到加载service-context.xml的时候,会因为容器已经存在Service类,使得cglib将不对Service进行代理,直接导致的结果就是在service-context中的事务配置不起作用,发生异常时,无法对数据进行回滚。
<!-- lang: xml --> <context:component-scan base-package= "org.cn.xxx"> <context:exclude-filter type ="annotation" expression= "org.springframework.stereotype.Service" /> </context:component-scan >
2.spring 自动扫描注解的时候,不去扫描@Controller
<!-- lang: xml --> <context:component-scan base-package ="org.cn.xxx> <context:exclude-filter type ="annotation" expression= "org.springframework.stereotype.Controller" /> </context:component-scan >
参考:http://blog.sina.com.cn/s/blog_5ddc071f0100uf7x.html。尤其是这段话:
Spring MVC启动时的配置文件,包含组件扫描、url映射以及设置freemarker参数,让spring不扫描带有@Service注解的类。为什么要这样设置?因为servlet-context.xml与service-context.xml不是同时加载,如果不进行这样的设置,那么,spring就会将所有带@Service注解的类都扫描到容器中,等到加载service-context.xml的时候,会因为容器已经存在Service类,使得cglib将不对Service进行代理,直接导致的结果就是在service-context中的事务配置不起作用,发生异常时,无法对数据进行回滚。
相关文章推荐
- springmvc mybatis 基于全注解事务配置注意事项
- springmvc mybatis 基于全注解事务配置注意事项
- springmvc 基于全注解事务配置注意事项
- 基于maven的SpringMVC,Spring,MyBatis的全注解配置
- springmvc 基于注解的事务配置,事务失效
- 基于maven的SpringMVC,Spring,MyBatis的全注解配置
- 七、初学SpringMVC+Mybatis之SpringMVC基于注解的配置
- SSM基于注解配置Spring4.1.6、springMVC4.1.6、mybatis3.2.8的maven框架搭建
- SSM简单整合(Mybatis,Spring,SpringMVC,基于注解和xml文件配置)
- 基于注解配置简单的SpringMVC+Mybatis
- spring mvc+mybatis+ spring 基于全注解事务配置
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- struts2注解配置注意事项
- 初学SpringMVC+Mybatis之Spring基于注解的组件扫描
- Mybatis环境的xml配置文件的注意事项
- springmvc,mybatis,freemarker,maven-基于注解的整合
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- SpringMvc配置文件注意事项
- spring事物配置,声明式事务管理和基于@Transactional注解的使用
- spring事物配置,声明式事务管理和基于@Transactional注解的使用