Spring的父子容器问题
在ssm框架搭建的时候
配置了一个Spring容器,又配置了一个前端控制器
<!-- 初始化spring容器 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/applicationContext-*.xml</param-value>
</context-param> <listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!--springmvc前端控制器-->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<!-- contextConfigLocation不是必须的, 如果不配置contextConfigLocation,
springmvc的配置文件默认在:WEB-INF/servlet的name+"-servlet.xml" -->
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
aaarticlea/png;base64,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" alt="" />
子容器可以访问父容器的对象,父容器不能访问子容器中的对象。
对于属性又不一样了,如果在父容器中有properties文件,其中的属性子容器是访问不到的!跨容器了!!
<属性互相都访问不到>
所以在Controller中可以注入一个Service对象
aaarticlea/png;base64,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" alt="" />
所有的Controller对象都放在springmvc容器中
springmvc.xml
......
<!--配置包扫描器-->
<context:component-scan base-package="com.winner.controller"/>
......
只扫controller,不要扫多了,如果springmvc容器扫多了,那么父子容器都有一套service,controller肯定用自容器的service,在一块嘛!那么在父容器中配置的事务就不生效了!!!
Service和Mapper对象都放在Spring容器中
applicationContext-dao.xml
.......
<!--包扫描器,扫描代理mapper-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.winner.mapper"/>
</bean>
......
applicationContext-service.xml
......
<!--包扫描器,扫描带@Service注解的类-->
<context:component-scan base-package="com.winner.service"/>
......
Spring的父子容器问题的更多相关文章
- spring的父子容器
在创建ssm项目工程时,经常需要读取properties资源配置文件,传统的方法当然可以. 但是spring提供了更简便的方法,@value注解. 在page.properties文件中,配置分页信息 ...
- [转]Spring IOC父子容器简介
通过HierarchicalBeanFactory接口,Spring的IoC容器可以建立父子层级关联的容器体系,子容器可以访问父容器中的Bean,但父容器不能访问子容器的Bean.在容器内,Bean的 ...
- 03 Spring的父子容器
1.概念理解和知识铺垫 在Spring整体框架的核心概念中,容器是核心思想,就是用来管理Bean的整个生命周期的,而在一个项目中,容器不一定只有一个,Spring中可以包括多个容器,而且容器有上下层关 ...
- SpringMVC与Spring的父子容器关系
问题: 在整合框架的时候有人也许会产生一个问题:能不能只配置一个扫描包加载实现类的扫描驱动,即在根目录下扫描所有的注解(@Controller.@Service.@Repository.@Compne ...
- Spring 父子容器
必须要说的是,父子容器是通过设置形成的关系. 容器实现了 ConfigurableApplicationContext 或 ConfigurableBeanFactory 接口,这两个接口中分别有se ...
- 面试高频题:说一说对Spring和SpringMvc父子容器的理解?
引言 以前写了几篇关于SpringBoot的文章<面试高频题:springBoot自动装配的原理你能说出来吗>.<保姆级教程,手把手教你实现一个SpringBoot的starter& ...
- Spring和SpringMVC父子容器关系初窥
一.背景 最近由于项目的包扫描出现了问题,在解决问题的过程中,偶然发现了Spring和SpringMVC是有父子容器关系的,而且正是因为这个才往往会出现包扫描的问题,我们在此来分析和理解Spring和 ...
- 转:spring的启动过程-spring和springMVC父子容器的原理
要想很好理解这三个上下文的关系,需要先熟悉spring是怎样在web容器中启动起来的.spring的启动过程其实就是其IoC容器的启动过程,对于web程序,IoC容器启动过程即是建立上下文的过程. s ...
- spring的父子上下文容器及配置
本文由作者张远道授权网易云社区发布. spring父子容器 spring总的上下文容器有父子之分.父容器和子容器.父容器对子容器可见,子容器对父容器不可见. 对于传统的spring mvc来说,spr ...
随机推荐
- 使用微软分布式缓存服务Velocity(Windows Server AppFabric Caching Service)
概述 Velocity是微软推出的分布式缓存解决方案,为开发可扩展性,可用的,高性能的应用程提供支持,可以缓存各种类型的数据,如CLR对象. XML.二进制数据等,并且支持集群模式的缓存服务器.Vel ...
- MyException
自定义Exception using System; using System.Collections.Generic; using System.Linq; using System.Text; u ...
- Ubuntu中设置环境变量详解
1, 为单一用户:.bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.打开用户主目录下的.bashrc,在这个文件中加入export PA ...
- python之super()函数
python之super()函数 python的构造器奇特, 使用魔方. 构造器内对基类对象的初始化同样也很奇特, 奇特到没有半点优雅! 在构造器中使用super(class, instance)返回 ...
- 从Keil 4升级到Keil 5的工程,想返回来用Keil 4打开
情景描述: 笔者电脑程序Keil 4升级到Keil 5,相应地,原来项目上的工程也在第一次用Keil 5打开的时候进行了升级.之后,由于客户需要开发资料,其版本为Keil 4,我尝试着用Keil 4打 ...
- Get current time and date on Android
You could use: Calendar c =Calendar.getInstance();int seconds = c.get(Calendar.SECOND); There are pl ...
- How to create jar for Android Library Project
http://stackoverflow.com/questions/17063826/how-to-create-jar-for-android-library-project This works ...
- C# 浅谈委托----温故而知新
先看看委托的概述: •委托类似于 C++ 函数指针,但它们是类型安全的. • 委托允许将方法作为参数进行传递. • 委托可用于定义回调方法. • 委托可以链接在一起:例如,可以对一个事件调用多个方法. ...
- 2463: [中山市选2009]谁能赢呢?- BZOJ
Description小明和小红经常玩一个博弈游戏.给定一个n×n的棋盘,一个石头被放在棋盘的左上角.他们轮流移动石头.每一回合,选手只能把石头向上,下,左,右四个方向移动一格,并且要求移动到的格子之 ...
- JS利用正则配合replace替换指定字符
替换指定字符的方法有很多,在本文为大家详细介绍下,JS利用正则配合replace是如何做到的,喜欢的朋友可以参考下 定义和用法 replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一 ...