• Spring IoC(八)-调用BeanFactoryPostProcessor:invokeBeanFactoryPostProcessors

    BeanFactoryPostProcessorpublicinterfaceBeanFactoryPostProcessor{voidpostProcessBeanFactory(ConfigurableListableBeanFactorybeanFactory)throwsBeansExcep...

    Spring IoC(七)-准备Bean容器:prepareBeanFactory

    protectedvoidprepareBeanFactory(ConfigurableListableBeanFactorybeanFactory){//设置BeanFactory的类加载器,我们知道BeanFactory需要加载类,也就需要类加载器,//这里设置为加载当前ApplicationC...

    Spring IoC(六)-容器创建和Bean加载:obtainFreshBeanFactory

    容器创建和Bean加载:obtainFreshBeanFactory创建bean容器,加载注册bean,这个方法是重要方法之一。//AbstractApplicationContext.java#line613protectedConfigurableListableBeanFactoryobtai...

    Spring IoC(五)-创建Bean容器准备工作:prepareRefresh

    //AbstractApplicationContext.java#line577protectedvoidprepareRefresh(){//记录启动时间this.startupDate=System.currentTimeMillis();//将active属性设置为true,closed属性...

    Spring IoC(四)-容器启动过程

    从ClassPathXmlApplicationContext开始整个链路复杂到可怕,所以想要真正读懂这部分代码需要耐心的一步步debug下去。publicClassPathXmlApplicationContext(StringconfigLocation)throwsBeansException...

    Spring IoC(三)-BeanFatory和ApplicationContext

    BeanFactory,从名字上也很好理解,生产bean的工厂,它负责生产和管理各个bean实例。IoC中最核心的接口是BeanFactory,提供IoC的高级服务,而ApplicationContext是建立在BeanFactory基础之上提供抽象的面向应用的服务。从上图可以看出:Applicat...

    Spring IoC(二)-容器启动

    容器启动本文使用的是4.3.20版本的spring,是5.x之前的比较新的版本。<dependency><groupId>org.springframework</groupId><artifactId>spring-context</artif...

    Spring IoC(一)-IoC基础

    IoC容器什么是容器?容器是一种为某种特定组件的运行提供必要支持的一个软件环境。例如,Tomcat就是一个Servlet容器,它可以为Servlet的运行提供运行环境。类似Docker这样的软件也是一个容器,它提供了必要的Linux环境以便运行一个特定的Linux进程。通常来说,使用容器运行组件,除...

    并发编程(十五)-分而治之:ForkJoin

    “分而治之”是非常有效的处理大量数据的方法。Java7开始引入了一种新的Fork/Join线程池,它可以执行一种特殊的任务:把一个大任务拆成多个小任务并行执行。Fork/Join并行计算框架计算斐波那契数列classFibonacciextendsRecursiveTask<Integer&g...

    并发编程(十四)-Atomic:原子类

    无锁就人的性格而言,我们可以分为乐天派和悲观派。对于乐观派来说,总是会把事情往好的方面想。他们认为所有所有事情总是不太容易发生问题,出错是小概率的,所以我们可以肆无忌惮地做事。如果真的不幸遇到了问题,则是有则改之无则加勉。对于悲观的人群来书,他们总是担惊受怕,认为出错是一种常态,所以无论巨细,都考虑...