机缘
不知不觉已经成为创作者的第1024天啦… …
- 刚开始接触博客的初衷就是为了记笔记📒、记总结📝,或许对于当时就等同于是为了找工作。
- 坚持学习并持续输出博客一年后,这时我发现再写博客,不在是为了找一份工作,已经变成一种习惯!一种成长型心态!
- 接着一年、两年到如今,慢慢通过这种坚持写作,会发现自己周期性在成长和复盘,查漏补缺,同时可以提高关注度,用自己的经验给他人帮助,无论是自我价值还是驱动力,内心还是收获了喜悦和富足的。
收获
在这1024天里,我获得了5600+粉丝的关注,也认识了一些志同道合的领域同行,也感谢收获的那些反馈,不论是正向的还是批判的,都是我不断修正的力量。也向更多优秀的创作者学习。
日常
其实创作早已经是生活的一部分了,如何平衡创作和工作学习?其实不是矛盾的命题,创作其实就是沉淀、积累、复盘的过程,只有这样才能更好的进入下一个工作学习状态,然后会接触收获更多,继而反过来将习得的新内容,反思、总结,进一步更新输出,是一个相互促进的过程。
成就
public abstract class AbstractApplicationContext extends DefaultResourceLoader
implements ConfigurableApplicationContext {
...
@Override
public void refresh() throws BeansException, IllegalStateException {
synchronized (this.startupShutdownMonitor) {
//1 为容器初始化做准备
prepareRefresh();
//2 获取BeanFactory;刚创建的默认DefaultListableBeanFactory
ConfigurableListableBeanFactory beanFactory = obtainFreshBeanFactory();
//3 BeanFactory的预准备工作(BeanFactory进行一些设置)
prepareBeanFactory(beanFactory);
try {
// 4 BeanFactory准备工作完成后进行的后置处理工作;
postProcessBeanFactory(beanFactory);
// 5 执行BeanFactoryPostProcessor的方法;
invokeBeanFactoryPostProcessors(beanFactory);
//6 注册BeanPostProcessor(Bean的后置处理器)
registerBeanPostProcessors(beanFactory);
// 7 initMessageSource();初始化MessageSource组件(做国际化功能;消息绑定,消息解析);
initMessageSource();
// 8 初始化事件派发器
initApplicationEventMulticaster();
// 9 子类重写这个方法,在容器刷新的时候可以自定义逻辑;
onRefresh();
// 10 给容器中将所有项目里面的ApplicationListener注册进来
registerListeners();
// 11.初始化所有剩下的单实例bean;
finishBeanFactoryInitialization(beanFactory);
// 12.完成BeanFactory的初始化创建工作;IOC容器就创建完成;
finishRefresh();
}
catch (BeansException ex) {
if (logger.isWarnEnabled()) {
logger.warn("Exception encountered during context initialization - " +
"cancelling refresh attempt: " + ex);
}
// 13.销毁
destroyBeans();
cancelRefresh(ex);
throw ex;
}
finally {
resetCommonCaches();
}
}
}
...
}
憧憬
后续会更多的在后端java领域深耕,输出优质文章内容,不断达到一个个的里程碑,保持热爱,持续更新,自驱成长、共同进步。