文档章节

springmvc+hibernate 注解事务 事务不能提交

JR1970
 JR1970
发布于 2017/03/29 10:50
字数 223
阅读 34
收藏 0

对于用annotation方式的事务注解和bean配置,spring的配置文件 与springMVC的配置文件对包的重复扫描装配会照成失效

在主容器中(applicationContext.xml),将Controller的注解排除掉 
<context:component-scan base-package="cn.jr">
        <context:exclude-filter type="annotation"
            expression="org.springframework.stereotype.Controller" />
</context:component-scan>

而在springMVC配置文件中将Service注解给去掉 
<context:component-scan base-package="cn.jr">
 <context:include-filter type="annotation"expression="org.springframework.stereotype.Controller" />
<context:exclude-filter type="annotation"expression="org.springframework.stereotype.Service" />
</context:component-scan> 

因为spring的context是父子容器,所以会产生冲突,由ServletContextListener产生的是父容器,springMVC产生的是子容器,子容器Controller进行扫描装配时装配了@Service注解的实例,而该实例理应由父容器进行初始化以保证事务的增强处理,所以此时得到的将是原样的Service(没有经过事务加强处理,故而没有事务处理能力。)

本文转载自:http://blog.csdn.net/running_snail_/article/details/8888506

JR1970
粉丝 3
博文 26
码字总数 8030
作品 0
徐汇
程序员
私信 提问
JPA中RESOURCE_LOCAL与JTA事务控制策略的比较

1.RESOURCE_LOCAL事务控制策略模式 将persistence.xml按照如下方式配置,会使用RESOURCE_LOCAL的事务控制策略,在这种策略模式下,应用程序自身要负责创建和管理EntityManager。 <persisten...

Jason-ZH
2015/12/06
349
0
spring @Transactional注解参数详解

事务注解方式: @Transactional 当标于类前时, 标示类中所有方法都进行事物处理 , 例子: 当类中某些方法不需要事物时: 事物传播行为介绍:   @Transactional(propagation=Propagation.REQUIR...

不开心的时候不要学习
2018/01/20
50
0
@Transaction必知必会

1. Spring事务的基本原理 事务管理是应用系统开发中必不可少的一部分。Spring 为事务管理提供了丰富的功能支持。Spring 事务管理分为编码式和声明式的两种方式。编程式事务指的是通过编码方式...

maskwang520
2018/04/15
0
0
Spring 事务

Spring 使用注解方式进行事务管理 使用步骤: 步骤一、在spring配置文件中引入tx:命名空间 步骤二、具有@Transactional 注解的bean自动配置为声明式事务支持 <!-- 事务管理器配置, Hibernate...

Q317075064
2016/09/29
68
0
Spring 使用注解方式进行事务管理

使用步骤: 步骤一、在spring配置文件中引入tx:命名空间 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="h......

binhu
2014/07/21
190
0

没有更多内容

加载失败,请刷新页面

加载更多

PostgreSQL 11.3 locking

rudi
今天
5
0
Mybatis Plus sql注入器

一、继承AbstractMethod /** * @author beth * @data 2019-10-23 20:39 */public class DeleteAllMethod extends AbstractMethod { @Override public MappedStatement injectMap......

一个yuanbeth
今天
10
1
一次写shell脚本的经历记录——特殊字符惹的祸

本文首发于微信公众号“我的小碗汤”,扫码文末二维码即可关注,欢迎一起交流! redis在容器化的过程中,涉及到纵向扩pod实例cpu、内存以及redis实例的maxmemory值,statefulset管理的pod需要...

码农实战
今天
4
0
为什么阿里巴巴Java开发手册中不建议在循环体中使用+进行字符串拼接?

之前在阅读《阿里巴巴Java开发手册》时,发现有一条是关于循环体中字符串拼接的建议,具体内容如下: 那么我们首先来用例子来看看在循环体中用 + 或者用 StringBuilder 进行字符串拼接的效率...

武培轩
今天
8
0
队列-链式(c/c++实现)

队列是在线性表功能稍作修改形成的,在生活中排队是不能插队的吧,先排队先得到对待,慢来得排在最后面,这样来就形成了”先进先出“的队列。作用就是通过伟大的程序员来实现算法解决现实生活...

白客C
今天
81
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部