摘要:该方法字面意思是忽略依赖类,注释给出的解释是在自动装配时忽略指定类型的依赖注入. 经过我在网上查的资料,发现自动装配有两种方式: 一种是在xml配置文件中的<beans>标签中配置一个属性,如下: 另一种是在依赖上添加@AutoWired注解,只有添加了该注解的依赖才会被自动注入实例. 而ignor
阅读全文
04 2019 档案
摘要:该方法目的是获取bean工厂.主要逻辑是:刷新bean工厂,获取bean工厂,进而返回bean工厂,但实际上并没有刷新bean工厂,基本上为空实现.源码如下: 而刷新bean工厂,正如注释所说,do nothing 关于刷新bean工厂的事什么也没做,只是设置了一个序列化id 而获取bean工厂只是
阅读全文
摘要:该方法目的是做刷新上下文前的准备工作: 首先清空bean扫描器map中的内容,然后调用父类的prepareRefresh方法: 父类的准备刷新方法,主要做了3个工作: 1.简单的标志赋值 >2.初始化属性源 >3.验证必须的属性是否都有 其中初始化属性源,主要工作是:判断servletContext
阅读全文
摘要:该方法目的是刷新应用上下文,是容器启动最主要的方法,其实现是一个模板方法,内容巨大,所以先看模板方法都做了哪些事,然后再细看每个方法的实现机制. refreshContext(context)方法首先调用了本类中一个refresh(context)方法: 然后在该方法中,context变身Abstr
阅读全文
摘要:该方法目的是对上面刚创建的环境对象进行相关配置,包含两步:配置属性源和配置活跃profiles. 其中配置属性源如下: 1.首先获取属性源 2.然后将默认属性源添加到属性源中 3.然后将命令行属性源添加到属性源中(两种情况: 一种复合,一种简单) 属性源配置结束,说明配置属性源就是将默认属性源和命令
阅读全文
摘要:该方法目的是创建一个环境对象,并且根据环境类型,自动判断是创建web环境对象,还是标准非web环境对象. 首先该方法源于prepareEnvironment准备环境: 然后进入该方法源码: 可以发现:根据webEnvironment字段,可以判断要生成的环境的类型,此处添加了web环境的jar包,所
阅读全文
摘要:容器启动时,监听器调用starting方法,本质是找到匹配的监听器,广播事件,开始监听 上节对寻找匹配监听器做了分析,其是这个过程比较重要的部分,本文开始监听,反而不是那么复杂,如下: 找匹配监听器就是从这里开始,找到后,直接遍历,调用invokeListener()方法,注意这个虽然有invoke
阅读全文

浙公网安备 33010602011771号