Spring源码情操陶冶-AbstractApplicationContext#postProcessBeanFactory
阅读源码有利于陶冶情操,承接前文Spring源码情操陶冶-AbstractApplicationContext#prepareBeanFactory
约定:web.xml中配置的contextClass为XmlWebApplicationContext
瞧瞧官方注释
/**
	 * Modify the application context's internal bean factory after its standard
	 * initialization. All bean definitions will have been loaded, but no beans
	 * will have been instantiated yet. This allows for registering special
	 * BeanPostProcessors etc in certain ApplicationContext implementations.
	 * @param beanFactory the bean factory used by the application context
	 */
主要承接前文中的prepareBeanFactory()方法后,供子类在标准的基础上再添加自定义的属性性质,主要是注册BeanPostProcessors
源码简析
对应的父类AbstractRefreshableWebApplicationContext#postProcessBeanFactory代码清单如下
	/**
	 *注册request/session环境
	 * Register request/session scopes, a {@link ServletContextAwareProcessor}, etc.
	 */
	@Override
	protected void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) {
		//注册ServletContextAwareProcessor
		beanFactory.addBeanPostProcessor(new ServletContextAwareProcessor(this.servletContext, this.servletConfig));
		beanFactory.ignoreDependencyInterface(ServletContextAware.class);
		beanFactory.ignoreDependencyInterface(ServletConfigAware.class);
		//注册web环境,包括request、session、golableSession、application
		WebApplicationContextUtils.registerWebApplicationScopes(beanFactory, this.servletContext);
		//注册servletContext、contextParamters、contextAttributes  、servletConfig单例bean
		WebApplicationContextUtils.registerEnvironmentBeans(beanFactory, this.servletContext, this.servletConfig);
	}
具体的调用BeanFactoryPostProcessors可见下节
下节预告
Spring源码情操陶冶-AbstractApplicationContext#invokeBeanFactoryPostProcessors
Spring源码情操陶冶-AbstractApplicationContext#postProcessBeanFactory的更多相关文章
- Spring源码情操陶冶-AbstractApplicationContext#invokeBeanFactoryPostProcessors
		阅读源码有利于陶冶情操,承接前文Spring源码情操陶冶-AbstractApplicationContext#postProcessBeanFactory 约定:web.xml中配置的context ... 
- Spring源码情操陶冶-AbstractApplicationContext#prepareBeanFactory
		阅读源码有助于陶冶情操,本文承接Spring源码情操陶冶-AbstractApplicationContext#obtainFreshBeanFactory 瞧瞧官方注释 /** * Configur ... 
- Spring源码情操陶冶-AbstractApplicationContext#finishBeanFactoryInitialization
		承接前文Spring源码情操陶冶-AbstractApplicationContext#registerListeners 约定web.xml配置的contextClass为默认值XmlWebAppl ... 
- Spring源码情操陶冶-AbstractApplicationContext#registerListeners
		承接前文Spring源码情操陶冶-AbstractApplicationContext#onRefresh 约定web.xml配置的contextClass为默认值XmlWebApplicationC ... 
- Spring源码情操陶冶-AbstractApplicationContext#onRefresh
		承接前文Spring源码情操陶冶-AbstractApplicationContext#initApplicationEventMulticaster 约定web.xml配置的contextClass ... 
- Spring源码情操陶冶-AbstractApplicationContext#initApplicationEventMulticaster
		承接前文Spring源码情操陶冶-AbstractApplicationContext#initMessageSource 约定web.xml配置的contextClass为默认值XmlWebAppl ... 
- Spring源码情操陶冶-AbstractApplicationContext#initMessageSource
		承接前文Spring源码情操陶冶-AbstractApplicationContext#registerBeanPostProcessors 约定web.xml配置的contextClass为默认值X ... 
- Spring源码情操陶冶-AbstractApplicationContext#registerBeanPostProcessors
		承接前文Spring源码情操陶冶-AbstractApplicationContext#invokeBeanFactoryPostProcessors 瞧瞧官方注释 /** * Instantiate ... 
- Spring源码情操陶冶-AbstractApplicationContext#obtainFreshBeanFactory
		前言-阅读源码有利于陶冶情操,本文承接前文Spring源码情操陶冶-AbstractApplicationContext 约束: 本文指定contextClass为默认的XmlWebApplicati ... 
随机推荐
- Android网络请求框架AsyncHttpClient实例详解(配合JSON解析调用接口)
			最近做项目要求使用到网络,想来想去选择了AsyncHttpClient框架开进行APP开发.在这里把我工作期间遇到的问题以及对AsyncHttpClient的使用经验做出相应总结,希望能对您的学习有所 ... 
- flask 扩展之 -- flask-pagedown
			支持 Markdown 语法, 并添加 富文本文章的预览功能. 使用到的包列表: PageDown : 使用 JavaScript 实现的客户端 Markdown 到 HTML 的转换程序. Flas ... 
- Sql Server日期时间格式转换
			Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONVERT(varchar(100), GETDATE() ... 
- 学习mysql语法--基础篇(二)
			前 言 mysql mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分: [SQL语句的组成] DML ... 
- mybatis介绍与环境搭建
			一.不用纯jdbc的原因,即缺点. 1.数据库理解,使用时创建,不用时释放,会对数据库进行频繁的链接开启和关闭,造成数据库的资源浪费,影响数据库的性能.设想:使用数据库的连接池.2.将sql语句硬编码 ... 
- 【LeetCode】87. Scramble String
			题目: Given a string s1, we may represent it as a binary tree by partitioning it to two non-empty subs ... 
- PHP实现简单的评论与回复功能还有删除信息
			我们首先先看一下功能 上面黑色的是评论的下面红色的字体是回复的 再来看看怎么实现的 1.发布评论 <form action="pinglunchili.php" method ... 
- SQL SERVER查看索引使用情况
			SELECT DISTINCT DB_NAME() AS N'db_name' , E.name AS N'schema_name' , OBJECT_NAME(a.object_id) AS N't ... 
- 一键将Web应用发布到云-Azure Web App
			我们现在越来越多的传统应用,逐步向云端迁移,原先私有云的部署模式,逐步向云端PaaS IaaS转变.例如: 我们在云端Azure中申请VM虚拟机,将我们的Web应用部署到VM的IIS中,同时做云服务的 ... 
- Java IO在实际项目开发中应用
			IO是java绕不过去的槛,在开发中io无处不在, 正如同 世界上本没有路,java io写多了,也就知道了大体是什么意思,在读完thinking in java 感觉就更清晰了,结合具体的业务场景, ... 
