public void refresh() throws BeansException, IllegalStateException {
synchronized (this.startupShutdownMonitor) {
// Prepare this context for refreshing.
prepareRefresh();
// Tell the subclass to refresh the internal bean factory.
ConfigurableListableBeanFactory beanFactory = obtainFreshBeanFactory();
// Prepare the bean factory for use in this context.
prepareBeanFactory(beanFactory);
try {
// Allows post-processing of the bean factory in context subclasses.
postProcessBeanFactory(beanFactory);
// Invoke factory processors registered as beans in the context.
invokeBeanFactoryPostProcessors(beanFactory);
// Register bean processors that intercept bean creation.
registerBeanPostProcessors(beanFactory);
// Initialize message source for this context.
initMessageSource();
// Initialize event multicaster for this context.
initApplicationEventMulticaster();
// Initialize other special beans in specific context subclasses.
onRefresh();
// Check for listener beans and register them.
registerListeners();
// Instantiate all remaining (non-lazy-init) singletons.详见下边分析
finishBeanFactoryInitialization(beanFactory);
// Last step: publish corresponding event.
finishRefresh();
}
prepareRefresh();中
this.startupDate = System.currentTimeMillis();记录开始时间
this.active = true;设定标志位true
/** Flag that indicates whether this context is currently active */
接下来
ConfigurableListableBeanFactory beanFactory = obtainFreshBeanFactory();
在方法obtainFreshBeanFactory();中
protected ConfigurableListableBeanFactory obtainFreshBeanFactory() {
refreshBeanFactory();//设定setSerializationId(getId())与设定this.refreshed = true;
ConfigurableListableBeanFactory beanFactory = getBeanFactory();//返回GenericApplicationContext() 内的实例变量private final DefaultListableBeanFactory beanFactory;这个变量在类ConfigurableListableBeanFactory 的默认构造函数中进行了部分初始化
public GenericApplicationContext() {
this.beanFactory = new DefaultListableBeanFactory();
this.beanFactory.setParameterNameDiscoverer(new LocalVariableTableParameterNameDiscoverer());
this.beanFactory.setAutowireCandidateResolver(new QualifierAnnotationAutowireCandidateResolver());
}
可以看到默认的beanFactory 是DefaultListableBeanFactory
if (logger.isDebugEnabled()) {
logger.debug("Bean factory for " + getDisplayName() + ": " + beanFactory);
}
return beanFactory;
}
// Instantiate all remaining (non-lazy-init) singletons.分析
finishBeanFactoryInitialization(beanFactory);
在这个方法中,会把定义为单例的bean进行初始化。
对于普通的bean,在初始化过程中,会在中间加入postbeanProcess处理。
对于配置为factorybean产生的bean,在初始话时,会进行判断,并调用配置的factorybean来产生bean。具体带后续分析
分享到:
相关推荐
然后,调用 wac.refresh()来初始化上下文,这个过程包括解析配置文件、创建Bean定义、实例化Bean、依赖注入等。 2. DispatcherServlet 的初始化DispatcherServlet 是 SpringMVC 的核心组件,它负责处理HTTP请求。每...
《PyPI官网下载:深入理解finix-wac-0.29.tar.gz——探索Python分布式云原生技术》 PyPI(Python Package Index)是Python社区的重要资源库,它为全球Python开发者提供了一个集中下载和分享软件包的平台。本文将...
"SUNDRAY_WNS_ALL_上网行为管理跨三层绑定WAC上终端MAC功能测试指导书.pdf" 本文档主要介绍了 SUNDRAY_WNS_ALL 上网行为管理跨三层绑定 WAC 上终端 MAC 功能测试的指导书。下面我们将对文档中的关键知识点进行详细...
wac.exe是一个小型命令行实用程序,可让您在Windows上使用ANSI颜色。 这将打印出漂亮的颜色: printcol.bat | wac 这不会: printcol.bat 为什么要 一些命令行工具(例如 )喜欢打印ANSI颜色。 由于Windows不知道...
资源分类:Python库 所属语言:Python 资源全名:wac-0.16.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
此固件早已失传 基础原则、规范、注意事项,如何对无线网络进行日常、季度和年度巡检、维护以及如何对无线网络进行优化,以提高网络性能等内容,用来对工程师现场安装无线设备,并对无线网络进行巡检维护和优化进行...
《3.8 部署 WAC 服务器详解》 在 Lync 2020 升级到 Lync 2021 的过程中,一个显著的变化是会议中无法直接共享 PPT,而是需要借助 Web App Collaboration (WAC) 功能来实现。WAC 服务器是 Lync 2021 提供在线文档...
《H3C WAC360无线AC固件升级指南》 在现代网络环境中,无线接入控制器(Wireless Access Controller,简称WAC)扮演着至关重要的角色,它们负责管理和优化无线网络的性能。H3C作为知名的网络设备提供商,其WAC360...
华三:中小企业无线路由器WAC360/361.pdf
### SANGFOR WAC 常见部署配置指导 #### 一、概述 本文档旨在为用户提供关于深信服WAC(Wireless Access Controller)在不同网络环境中的部署与配置指导。考虑到用户网络环境的多样性,文档重点介绍了几种常见的...
**WAC Widget开发指南** **概述** WAC (Wireless Application Capabilities) Widget是一种轻量级的应用程序,它允许开发者创建跨平台的移动互联网服务。本开发指南旨在为开发者提供全面的指导,从基础到高级,帮助...
**Word And Calculator(WAC)**是一款综合性的应用软件,它的主要功能是将计算器和英语单词查询工具结合在一起,为用户提供方便快捷的服务。这款软件的设计理念是为了满足用户在日常工作中或者学习时,同时处理数字...
《SANGFOR_WAC_V3.6.3_MySQL数据库对接认证配置指导手册》 在企业网络管理中,安全认证是至关重要的环节。信锐无线控制器(SANGFOR WAC)提供了对接外部数据库,如MySQL,进行用户认证的功能。这使得企业能够利用已...
Windows Admin Center 1904 WAC管理工具 for win10 2012 2016 2019
WAC是一套webapp标准,这是一个例子程序,让学习WAC的朋友比较方便下载。否则要下载整个WAC SDK有200M. WAC的本质就是web语言写的应用,扩展名为wgt,可以在移动微技,opera widget上运行。
标题中的“一款wac格式的精致小巧的录音程序”指的是一个设计精良、体积小巧的录音软件,它能够以WAC格式保存音频数据。WAC可能是指一种特定的音频文件格式,但要注意的是,标准的音频格式中并没有WAC这个选项,可能...
WAC4016 无线控制器用户手册 本手册主要介绍了 WAC4016 无线控制器的使用和配置,旨在帮助网络规划人员、现场技术支持与维护人员、负责网络配置和维护的网络管理员快速地完成设备的配置和使用。 知识点1: 设备管理...
【PORTAL页面自定义配置】是SANGFOR WAC V3.6.3版本中的一项重要功能,允许管理员根据自身需求调整用户在接入无线网络时所看到的认证页面的外观和内容。以下是对该配置手册内容的详细解读: 1. **修改页面Logo**: ...
《SANGFOR WAC V3.6.3 APP应用节流配置指导手册》详细介绍了如何在Sangfor网络访问控制设备上配置应用节流功能,以提高下载速度并节省出口带宽。该手册适用于NAC3.6.3版本。 1. **应用节流介绍与配置** 应用节流...
SANGFOR WAC V3.6.3的SQL Server数据库对接认证配置,使得企业可以利用已有的SQL Server数据库进行无线网络的用户认证管理,提高安全性和便捷性。通过以上步骤,管理员可以系统地进行配置,确保认证过程的顺利进行。...