Spring与SpringMVC的父子容器关系

和Java的多态很类似,在子类中,可以定义service,dao,controller(这个必须是springmvc容器对象),也可以把service和dao定义在spring容器中,但是要注意的是,这样做的话在父类容器不能去注入子类中的controller对象

原文地址:https://www.cnblogs.com/Booker808-java/p/8322593.html

时间: 2024-10-09 06:56:23

Spring与SpringMVC的父子容器关系的相关文章

Spring 和SpringMVC 的父子容器关系

Spring和SpringMVC作为Bean管理容器和MVC层的默认框架,已被众多WEB应用采用,而实际使用时,由于有了强大的注解功能,很多基于XML的配置方式已经被替代,但是在实际项目中,同时配置Spring和SpringMVC时会出现一些奇怪的异常,比如Bean被多次加载,多次实例化,或者依赖注入时,Bean不能被自动注入,但是明明你已经将该Bean注册了的.找原因还是要看问题的根源,我们从容器说起. 在Spring整体框架的核心概念中,容器是核心思想,就是用来管理Bean的整个生命周期的,

Spring和SpringMVC父子容器关系初窥

一.背景 最近由于项目的包扫描出现了问题,在解决问题的过程中,偶然发现了Spring和SpringMVC是有父子容器关系的,而且正是因为这个才往往会出现包扫描的问题,我们在此来分析和理解Spring和SpringMVC的父子容器关系并且给出Spring和SpringMVC配置文件中包扫描的官方推荐方式. 二.概念理解和知识铺垫 在Spring整体框架的核心概念中,容器是核心思想,就是用来管理Bean的整个生命周期的,而在一个项目中,容器不一定只有一个,Spring中可以包括多个容器,而且容器有上

Spring和SpringMVC父子容器关系所引发的血案

一.背景 最近在使用工具类实现将数据库中的数据批量导入到Solr索引库的时候,使用单元测试提示: java.lang.IllegalStateException: Failed to load ApplicationContext 在解决问题的过程中,偶然发现了Spring和SpringMVC是有父子容器关系的,正是由于这种父子容器关系的存在,导致了问题的存在. 二.错误重现 下面是我的测试类: public class SolrUtil { @Autowired private GoodsDa

Spring和SpringMVC的关系

1.Spring和SpringMVC是父子容器关系. 2.Spring整体框架的核心思想是容器,用来管理bean的生命周期,而一个项目中会包含很多容器,并且它们分上下层关系,目前最常用的一个场景是在一个项目中导入Spring和SpringMVC框架,而Spring和SpringMVC其实就是两个容器,Spring是父容器,SpringMVC是子容器,Spring父容器中注册的Bean对SpringMVC子容器是可见的,反之则不行. 3.按照官方文档推荐,根据不同的业务模块来划分不同的容器中注册不

Spring和SpringMVC父子的容器之道---[上篇]

昨天,给数据组写接口,不小心掉进坑里挣扎了半天,最后发现是spring和springmvc它们虽是父子但并不和谐,于是在此一记. Spring和SpringMVC作为Bean管理容器和MVC层的默认框架,已被众多WEB应用采用,而在实际开发中,由于有了强大的注解功能,很多基于XML的配置方式已经被替代,但在实际项目中,我们经常会同时配置Spring和SpringMVC的配置文件,分层来管理它们,但是有时候就会出现那么一些奇怪的异常,一旦进坑,让你无法自拔,就在昨天给数据组写接口时,我进坑了,就在

spring的父子容器

在创建ssm项目工程时,经常需要读取properties资源配置文件,传统的方法当然可以. 但是spring提供了更简便的方法,@value注解. 在page.properties文件中,配置分页信息. 这个时候,发现在Service层用@value("${PAGESIZE}")可以取到10. 然而在controller中同样的注解却不起作用了. 原来,这涉及到了spring的父子容器问题. spring和springmvc都是容器.spring是父容器,springmvc是子容器.

Spring中父子容器的实现实例

Spring中父子容器的实现实例Spring的父子容器可以通过ConfigurableApplicationContext或ConfigurableBeanFactory来实现,这两个接口中分别有setParent及setParentBeanFactory方法,可以与当前的子容器进行父子容器关联,这个时候子容器就可以引用父容器中的bean,但是父容器是不能够引用子容器中的bean的,并且各个子容器中定义的bean是互不可见的,这样也可以避免因为不同的插件定义了相同的bean而带来的麻烦.应用场景

BeanFactory父子容器的知识

容器知识点1: 在Spring中,关于父子容器相关的接口HierarchicalBeanFactory,以下是该接口的代码: public interface HierarchicalBeanFactory extends BeanFactory { BeanFactory getParentBeanFactory(); //返回本Bean工厂的父工厂 boolean containsLocalBean(String name); //本地工厂是否包含这个Bean } 其中: 1.第一个方法ge

Spring以及SPringmvc相关问题: ServletContext -父子容器

总结如下: 明确了Servlet规范中ServletContext的作用和意义.此外明确一个Tomcat中多个web应用,每个人web应用有唯一的一个ServletContext(全局上下文).[例子见:同一tomcat多个应用session问题] 这个ServletContext 对应JSP中内置对象javax.servlet.jsp.ServletContext(作用于application全局级) 明确Spring(Spring.context包定义)上下文 ApplicationCont