`
y806839048
  • 浏览: 1120664 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

解决spring、springMVC重复扫描导致事务失效的问题

阅读更多

在主容器中(applicationContext.xml),将Controller的注解排除掉 

1
2
3
<context:component-scan base-package="com"
    <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> 
</context:component-scan>

而在springMVC配置文件中将Service注解给去掉 

1
2
3
4
<context:component-scan base-package="com"
    <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(没有经过事务加强处理,故而没有事务处理能力。 

还有一种方式是将service层改用xml配置,其实这样做也是变相的让springmvc无法扫描service,而只能依赖父窗口也就是ServletContextListener来进行初始化,这样同样被赋予了事务性。 

分享到:
评论

相关推荐

    Spring+SpringMVC+Hibernate框架集成详解

    Spring+SpringMVC+Hibernate 框架集成详解 本文档旨在详细介绍 Spring、SpringMVC 和 Hibernate 框架的集成,旨在帮助开发人员快速了解这三个框架的集成过程。 Spring 框架 Spring 框架是一个 Java 语言的开源...

    Spring+SpringMVC配置事务管理无效原因及解决办法详解

    在 application.xml 中配置的事务管理会被 SpringMVC 重复扫描,导致事务管理无效。 解决办法 要解决 Spring+SpringMVC 配置事务管理无效的问题,需要正确配置 Spring 和 SpringMVC 的配置文件。Spring 的配置文件...

    spring/springmvc/mybatis所需jar包

    在Java开发领域,Spring、SpringMVC和MyBatis是三个非常重要的框架,它们共同构建了一个强大而灵活的Web应用程序栈。Spring作为一个全面的后端开发框架,提供了依赖注入(DI)和面向切面编程(AOP)等功能,极大地...

    Spring+SpringMVC+Mybatis框架项目整合

    "Spring+SpringMVC+Mybatis框架项目整合"是一个典型的后端技术栈,旨在提供高效、灵活且可维护的解决方案。下面将详细介绍这三个框架及其整合过程中的关键知识点。 **Spring框架**: Spring是一个开源的Java平台,...

    Spring SpringMVC Mybatis 整合jar包

    1. 配置Spring:首先需要在Spring的配置文件(如`applicationContext.xml`)中声明Bean,包括SpringMVC的DispatcherServlet、数据源、事务管理器等。 2. 集成SpringMVC:在`web.xml`中配置SpringMVC的...

    spring+springmvc+hibernate

    同时,由于Spring和Hibernate的广泛社区支持,可以找到大量解决问题的资源和库。 总结来说,Spring、SpringMVC和Hibernate是Java开发中的三大支柱,它们共同构建了一个高效、灵活的企业级应用开发环境。理解和熟练...

    Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码.zip

    Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+...

    Spring SpringMVC Hibernate整合

    Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合

    spring springmvc mybatis所需的jar包

    spring springmvc mybatisspring springmvc mybatisspring springmvc mybatisspring springmvc mybatisspring springmvc mybatis

    Spring+SpringMVC+Mybatis框架整合例子(SSM) 下载

    Spring、SpringMVC和Mybatis是Java开发中最常用的三大开源框架,它们的整合使用,通常被称为SSM框架。这个框架组合提供了完整的后端服务解决方案,包括依赖注入(DI)、面向切面编程(AOP)、模型-视图-控制器(MVC...

    Spring/SpringMVC/MyBatis整合+事务回滚

    在"Spring/SpringMVC/MyBatis整合+事务回滚"的主题中,我们将深入探讨如何将这三个框架整合起来,并实现事务的回滚功能。 首先,Spring框架是核心,它提供了依赖注入(DI)和面向切面编程(AOP)的能力,使得代码更...

    maven搭建SpringMVC+spring+ibatis

    在IT行业中,构建高效、可扩展的Web应用是至关重要的,而"Maven搭建SpringMVC+Spring+Ibatis"的组合则提供了一种强大的解决方案。本文将深入探讨这些技术及其集成,帮助你理解和掌握如何利用它们来构建现代化的Java ...

    Spring-SpringMVC-Mybatis整合所有jar包

    在Java Web开发中,Spring、SpringMVC和Mybatis是三个非常重要的框架,它们的整合可以构建出高效、灵活的企业级应用。这个压缩包“Spring-SpringMVC-Mybatis整合所有jar包”包含了这三个框架整合所需的全部依赖,...

    mybatis3+spring+springMVC4整合jar包.rar

    标题 "mybatis3+spring+springMVC4整合jar包.rar" 描述的是一个整合了MyBatis 3、Spring 4 和 Spring MVC 4 的项目压缩包。这个压缩包通常用于快速搭建一个基于Java的Web开发环境,尤其是用于处理数据库操作和前端...

    完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip

    完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统...

    Spring SpringMVC Mybatis easyui

    标题 "Spring SpringMVC Mybatis easyui" 描述了一个整合了Spring、SpringMVC、Mybatis和EasyUI技术的项目,这些技术都是在Java Web开发中广泛应用的组件。接下来,我们将详细探讨这些技术以及它们如何协同工作。 1...

    Spring+SpringMVC+SpringDataJPA+Hibernate

    在本文中,我们将深入探讨"Spring+SpringMVC+SpringDataJPA+Hibernate"这个集成框架,这是一个在Java...通过这个集成框架,我们可以轻松地处理业务逻辑、数据库操作和用户界面,从而专注于解决实际问题,提高开发效率。

    spring+springmvc+mybatis

    在实际项目中,开发者通常会创建一个配置文件(如:`springmvc_mybatis1208`可能包含的`spring-config.xml`),在其中配置Spring和MyBatis的相关设置,包括数据源、事务管理器、SqlSessionFactory等。同时,还需要...

    spring+springMVC+Mybatis框架整合

    【Spring+SpringMVC+Mybatis 整合详解】 整合Spring、SpringMVC和Mybatis(简称SSM)是Java Web开发中常见的架构选择,它提供了强大的依赖注入、控制层和持久层的分离,以及灵活的数据访问能力。下面将详细解释SSM...

    maven 整合spring springmvc ibatis

    2. 配置Spring:编写applicationContext.xml,配置Spring的核心组件,包括Bean的定义、事务管理、数据源等。 3. 配置SpringMVC:创建web.xml,配置DispatcherServlet,并设置servlet-context.xml作为SpringMVC的...

Global site tag (gtag.js) - Google Analytics