
Spring 源码学习
文章平均质量分 88
Spring 源码学习
bestcxx
向外思考,向上生长,锲而不舍,金石可镂
展开
-
0.10、Spring 源码学习 —— ProxyBeanFactory
在 SpringBean 的初始化环节,源码会先获取一个 beanbt:源码上的注解翻译实现了FactoryBean这个接口的类,可以在 一个 BeanFactory 对象的内部被调用(成为了内部变量),而这个 BeanFactory 对象会成为这些独立对象的工厂(事实上,通过 FactoryBean 的 getObject() 可以获得这个对象).如果一个类实现了这个接口,那么它经常...原创 2019-12-22 13:01:02 · 462 阅读 · 1 评论 -
0.9、Spring 源码学习 FactoryBean
bt:源码位置org.springframework.beans.factory.FactoryBeanbt:源码上的注解翻译实现了FactoryBean这个接口的类,可以在 一个 BeanFactory 对象的内部被调用(成为了内部变量),而这个 BeanFactory 对象会成为这些独立对象的工厂(事实上,通过 FactoryBean 的 getObject() 可以获得这个对象).如...原创 2019-12-15 12:27:07 · 344 阅读 · 0 评论 -
0.8、Spring 源码学习——Spring中的事件发布和处理
文章目录前言Spring 中的 观察者模式Spring 事件相关的类/接口介绍多事件处理器Spring 中关键的几个重要事件类事件监听器类自定义事件发布与监听自定义监听器自定义事件自定义事件的发布——即效果查看延伸——ApplicationListener 和 ServletContextListener参考链接前言在 Spring applicationContext refresh() ...原创 2019-10-16 20:58:29 · 373 阅读 · 0 评论 -
11.2、Spring源码学习 ——SpringMVC 之 DispatcherServet 的 init()方法
文章目录前言DispatcherServet 间接 继承了 HttpServletHttpServlet 基本介绍HttpServlet 的基本特性HttpServlet 的使用方法前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。DispatcherServet 间接 继承了 HttpServletDispatcherServet 间接 继承了 HttpServlet , 从...原创 2019-08-27 23:35:37 · 321 阅读 · 0 评论 -
11.4、Spring源码学习 ——SpringMVC 之 DispatcherServet 的运行阶段
文章目录前言先了解下 DispatcherServet 的特性DispatcherServet 的 UML 图HttpServlet 的特性在 FrameworkServlet 中覆盖重写 doGet()等方法FrameworkServlet .processRequestSpringMVC 单例模式下线程安全问题前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好先了解下 Dispat...原创 2019-08-20 09:09:14 · 241 阅读 · 0 评论 -
11.0、Spring源码学习 ——SpringMVC 的 ContextLoaderListener
文章目录前言SpringMVC 和 web.xmlServletContextListener自己实现一个 ServletContextListener在 web.xml 中使用 < listener> 配置 ServletContextListenerSpringMVC 对 ServletContextListener 的实现 ContextLoaderListenerCont...原创 2019-08-29 23:45:11 · 473 阅读 · 0 评论 -
11.1、Spring源码学习 ——SpringMVC 之 web.xml 和 DispatcherServet
文章目录前言SpringMVC 是针对 servlet 请求的封装Maven依赖:本文版本 4.3.17.RELEASESpringMVC 的入口配置:web.xml配置处理器 DispatcherServlet 和 加载文件单独配置加载文件进入 DispatcherServlet先看下 DispatcherServlet 的类继承关系SpringMVC 的默认配置文件加载:Dispatcher...原创 2019-08-09 08:56:44 · 497 阅读 · 0 评论 -
0.7、Spring源码学习 ——从接口的抽象方法和抽象类的抽象方法说起
文章目录前言点睛之笔:接口的抽象方法和抽象类的抽象方法的应用差别?举个例子UML 关系图关门,放代码抽象父类 Top子类 Bottom测试方法 和 结果最佳实践前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。点睛之笔:接口的抽象方法和抽象类的抽象方法的应用差别?本文主要就是围绕这一点来说的差异所在:相较于接口的抽象方法,抽象类的抽象方法可以在抽象类的内部被其他普通方法直接调...原创 2019-06-25 08:56:50 · 643 阅读 · 0 评论 -
0.6、Spring源码学习 ——Spring AOP的使用规律和测试代码
文章目录1、如何开启 Spring AOP?2、Spring AOP 有什么影响,所有Spring bean都会使用代理模式吗?3、 和 的区别4、JDK动态代理和cglib动态代理的区别?5、JDK动态代理和cglib动态代理那个效率高?6、什么时候一定要用cglib动态代理7、如果切点相关的类没有父接口可以使用 吗?8、对于同一个Spring bean,其正常对象、JDK动态代理对象、cg...原创 2019-06-23 18:29:43 · 468 阅读 · 0 评论 -
0.5、Spring源码学习 ——Spring bean 的存在形式和 Spring AOP 的应用规律
文章目录前言通过断点查看单例状态下的 Spring bean 在 上下文中的形态断点的位置和测试技巧对Spring bean 三种形态对截图Spring AOP 什么时候使用JDK动态代理,什么时候是cglib动态代理?自己动手感受jdk动态代理和cglib动态代理Spring AOP 动态代理的配置和规律前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好通过断点查看单例状态下的 Sp...原创 2019-06-15 23:41:27 · 345 阅读 · 0 评论 -
0.4、Spring源码学习 ——Spring 中的 profile
文章目录前言Spring profile 的作用给Bean 定义 profile注解方式xml配置方式激活特定的Profile启动增加 JVM 参数注解方式激活web.xml 配置方法Spring profile 不同于Maven profile参考链接前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好.Spring profile 的作用我们的开发一般会有本地、测试、生产等几个环...原创 2019-06-12 13:39:56 · 281 阅读 · 0 评论 -
0.3、Spring源码学习-从一个UML模型讲起
文章目录前言本文的灵感给出一个UML图提出第一个问题提出第二个问题接口-父类-子类 模型的好处前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。本文的灵感最近的几个星期笔者在工作开发和Sping 源码学习中看到了一些“新奇”的代码写法,与此产生了一些灵感。开发中遇到的情况是这样的,笔者需要对一个对账功能进行改造,现有程序有两个特点,一个是对账功能无法指定时间,由定时任务调用...原创 2019-05-30 22:05:19 · 561 阅读 · 2 评论 -
0.2、Spring 源码学习:从BeanNameAware 到 *Aware 认识一个Spring bean
public AbstractAutowireCapableBeanFactory() { super(); ignoreDependencyInterface(BeanNameAware.class); ignoreDependencyInterface(BeanFactoryAware.class); ignoreDependencyInterface(BeanClassLoaderA...原创 2019-05-24 21:48:54 · 280 阅读 · 0 评论 -
0.1 、Spring 源码学习-JVM类加载器-双亲委派模型-Spring 中类加载机制
文章目录JVM 类加载机制双亲委派模型Spring 类加载机制JVM 类加载机制/*** 获取类加载器的测试方法*/@Testpublic void test2() { //获取Test类的类加载器 sun.misc.Launcher$AppClassLoader@4dc63996 ClassLoader c = Test.class.getClassLoader(); ...原创 2019-09-03 23:37:41 · 2273 阅读 · 1 评论 -
1、Spring 源码学习-准备
文章目录前言该走的路是一定要走的源码下载 还是 IDE 看 jar 包?方法论建议一:掌握基础的 UML 知识和工具建议二:积累常见的英文术语建议三:用好关键字查询,看看别人怎么说建议四:带着问题学习组件:Component前言体能状态先于精神状态,习惯先于决心,聚集先于喜好该走的路是一定要走的作为一名 Java 开发实践者,研究学习 Spring 源码是必不可少的环节。这里笔者的...原创 2019-05-21 21:13:07 · 339 阅读 · 0 评论 -
3.2-1、Spring源码学习:ConfigurableListableBeanFactory beanFactory = obtainFreshBeanFactory();
文章目录前言AbstractApplicationContext.obtainFreshBeanFactory(AbstractRefreshableApplicationContext.refreshBeanFactory(createBeanFactory()loadBeanDefinitions(beanFactory);XmlWebApplicationContext.loadBeanDe...原创 2019-09-01 17:44:51 · 767 阅读 · 0 评论 -
3.2-2、Spring源码学习:reader.loadBeanDefinitions(configLocation);
文章目录前言AbstractBeanDefinitionReader.loadBeanDefinitions(前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。AbstractBeanDefinitionReader.loadBeanDefinitions(org.springframework.beans.factory.support.AbstractBeanDefiniti...原创 2019-09-09 08:47:17 · 807 阅读 · 8 评论 -
3.2-3、Spring源码学习:DefaultBeanDefinitionDocumentReader.parseDefaultElement(:解析默认标签
文章目录前言承上启下进入源码:DefaultBeanDefinitionDocumentReader.parseDefaultElement(DefaultBeanDefinitionDocumentReader.importBeanDefinitionResource(前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。承上启下在上一篇文章中Spring源码学习:reader.l...原创 2019-09-08 23:39:28 · 354 阅读 · 0 评论 -
3.3-1、Spring源码学习:prepareBeanFactory(beanFactory);
文章目录前言承上启下AbstractApplicationContext.prepareBeanFactory(ConfigurableListableBeanFactory beanFactory)beanFactory 添加单例 bean 的过程DefaultListableBeanFactory.registerSingleton(String beanName, Object single...原创 2019-10-09 08:05:24 · 521 阅读 · 0 评论 -
2、Spring源码学习:认识加载 xml 文件的 ClassPathXmlApplicationContext
文章目录前言这是一篇很水的文章入口从 ClassPathXmlApplicationContext 开始的 UML 图前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好这是一篇很水的文章因为目前了解还不多,只是按图索骥,画了一下通过XML 初始化 Spring 容器的大体的 UML 类关系图入口下面这行代码你一定很熟悉,这是加载 Spring xml 文件的常规操作App...原创 2019-05-22 22:02:17 · 595 阅读 · 0 评论 -
3.0、Spring源码学习:认识 AbstractApplicationContext.refresh()
文章目录前言所有初始化 Spring 容器的操作都会调用这个 refresh() 方法提供一个新入口GenericApplicationContextUML 图进入源码前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好所有初始化 Spring 容器的操作都会调用这个 refresh() 方法上一篇文章提到类这一点 2、Spring源码学习:认识加载 xml 文件的 ClassPat...原创 2019-10-29 16:44:05 · 692 阅读 · 0 评论 -
3.1、Spring源码学习:认识 DefaultListableBeanFactory
文章目录前言DefaultListableBeanFactoryDefaultListableBeanFactory 中的一些常量前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。DefaultListableBeanFactoryorg.springframework.beans.factory.support.DefaultListableBeanFactoryDefaul...原创 2019-09-01 14:34:18 · 540 阅读 · 0 评论