SpringMVC初始化bean的问题

问题描述

SpringMVC初始化bean的问题

阅读源码 发现在ContextLoader(ContextLoaderListener的父类)和FrameworkServlet(DispatcherServlet的父类)中都有initWebApplicationContext和configureAndRefreshWebApplicationContext方法,并在其中调用ConfigurableWebApplicationContext对象的refresh方法,那么注册bean到底是在哪个方法中呢,是在ContextLoaderListener初始化期间还是DispatcherServlet初始化期间?

解决方案

自己找到一张图解决了

解决方案二:

springmvc bean初始化

时间: 2024-10-29 21:56:14

SpringMVC初始化bean的问题的相关文章

配置是否初始化Bean的方法

在Spring Boot:定制自己的starter一文提到,只要DbCountRunner这个类在classpath路径下,Spring Boot会自动创建对应的spring bean并添加到应用程序上下文中. 在文章最后提到,Spring Boot的自动配置机制依靠@ConditionalOnMissingBean注解判断是否执行初始化代码,即如果用户已经创建了bean,则相关的初始化代码不再执行. 现在在上篇文章的基础上进行演示,看看@ConditionalOnMissingBean注解的作

Spring初始化Bean的过程

最近打算写一个spring-mvc的插件,便于做接口测试,既然是插件,那就是零耦合.知道spring有几个接口,BeanPostProcessor, InitializingBean, DisposableBean, ApplicationContextAware, BeanFactoryPostProcessor,这几个接口也涉及到bean的生命周期. 贴代码: 调用类: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2

【spring源码学习】spring的IOC容器在初始化bean过程

[一]初始化IOC的bean的时候Spring会执行的一些回调方法 (1)spring bean创建的前置处理 =>ApplicationContextAwareProcessor 在创建bean的时候调用 bean.setEnvironment(this.applicationContext.getEnvironment()) bean.setEmbeddedValueResolver(new EmbeddedValueResolver(this.applicationContext.getB

浅谈spring容器中bean的初始化_java

当我们在spring容器中添加一个bean时,如果没有指明它的scope属性,则默认是singleton,也就是单例的. 例如先声明一个bean: public class People { private String name; private String sex; public String getName() { return name; } public void setName(String name) { this.name = name; } public String get

Spring源码学习之: 通过Spring @PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作

关于在spring  容器初始化 bean 和销毁前所做的操作定义方式有三种: 第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 第二种是:通过 在xml中定义init-method 和  destory-method方法 第三种是:通过bean实现InitializingBean和 DisposableBean接口 下面演示通过  @PostConstruct 和 @PreDestory 1:定义相关的实现类:   1 pack

DispatcherServlet与初始化主线

在上一篇文章中,我们给出了构成SpringMVC应用程序的三要素以及三要素的设计过程.让我们来归纳一下整个设计过程中的一些要点:  SpringMVC将Http处理流程抽象为一个又一个处理单元 SpringMVC定义了一系列组件(接口)与所有的处理单元对应起来 SpringMVC由DispatcherServlet贯穿始终,并将所有的组件串联起来 在整个过程中,组件和DispatcherServlet总是维持着一个相互支撑的关系:  DispatcherServlet -- 串联起整个逻辑主线,

SpringMVC核心配置文件详解

在上一篇文章中,我们从DispatcherServlet谈起,最终为读者详细分析了SpringMVC的初始化主线的全部过程.整个初始化主线的研究,其实始终围绕着DispatcherServlet.WebApplicationContext和组件这三大元素之间的关系展开.  在文章写完之后,也陆续收到了一些反馈,其中比较集中的问题,是有关WebApplicationContext对组件进行初始化的过程交代的不够清楚.所以,本文作为上一篇文章的续文,就试图来讲清楚这个话题.  SpringMVC的核

[Spring] 声明Bean

定义如下接口: package com.springinaction.springidol; public interface Performer { void perform() throws PerformanceException; } 1 创建spring配置 spring容器提供了两种配置bean的方式,使用xml文件或java注解.一个典型的spring xml配置文件如下: <?xml version="1.0" encoding="UTF-8"

Spring Bean的作用域(转)

  Spring Bean的作用域 .singleton  [单例] eg:<bean id="personService" class="com.yinger.service.impl.PersonServiceBean" scope="singleton"></bean> 在每个Spring IoC容器中一个bean定义只有一个对象实例. 请注意Spring的singleton bean概念与"四人帮&quo