您的位置:首页 > 编程语言 > Java开发

springmvc mybatis 基于全注解事务配置注意事项

2015-05-17 21:22 447 查看
1.spring mvc 自动扫描注解的时候,不去扫描@Service

<!-- 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中的事务配置不起作用,发生异常时,无法对数据进行回滚。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: