【目录】Spring 源码学习

jwfy 关注

2018.01.31 19:57* 字数 896 阅读 152评论 0喜欢 9

用来记录自己学习spring源码的一些心得和体会以及相关功能的实现原理,难免存在一些错误的情况,如果发现了,希望能够指出来~

spring版本 4.3.9.RELEASE

本文是学习spring源码的第一篇,主要讲的是,spring经过怎样的步骤完成xml文件的读取并生成相关的beandefinition信息

在上一篇的基础上,突出从xml的配置到具体beandefinition的操作细节,并且重点分析命名空间,顺便看了下dubbo类似的操作,发现他们的套路。

在深入学习命名空间发现了spring对外暴露的各种钩子,主要分析了比较常用的两种beanPostprocessor,如何使用和源码实现的过程。

getBean操作比较复杂,所以才分为两篇文章学习

从工厂bean和bean工厂的角度出发,了解spring是如何实例化的,最好是配合源码细细阅读,并且很多基于spring开发的产品都会使用bean工厂,例如mybatis

本文学习和了解了spring中常见的resource的工作原理,并结合现实中的配置习惯,引出了Apache Ant路径规则,spring是如何实现该规则的。
最后分析了FileSystemXmlApplicationContext和ClassPathXmlApplicationContext直接的差别,主要就是文件读取的协议不一致,在实际使用过程中需要清楚这些差别,否则会出现找不到配置文件的错误。

spring aop的实际用法以及xml配置和注解配置的原理学习和了解

spring mvc的学习,对Tomcat的基础了解,整个的运行过程是如何执行的,URL信息如何被管理,http请求分发到spring中如何被处理的

由一个注解无效引发的问题,学习和了解了新的Spring MVC URL处理细节(PS:可以优先学习此新的方法,老方式已经不被推荐使用)

Spring中的属性问题到底是如何被读取的,在bean中添加了@Value注解的字段是如何从属性文件获取到需要的字段数据

Spring中的事件通知是如何实现的,同步和异步事件通知的用法和实现细节以及Spring提供的常见的Event

介绍了事务的基本信息以及如何具体的使用事务,并分析少量源码发现各事务的本质情况。其次现在在真实的分布式系统中事务发挥的作用已经不是很大了,但并不妨碍学习事务

【目录】Spring 源码学习的更多相关文章

  1. Spring 源码学习笔记11——Spring事务

    Spring 源码学习笔记11--Spring事务 Spring事务是基于Spring Aop的扩展 AOP的知识参见<Spring 源码学习笔记10--Spring AOP> 图片参考了 ...

  2. Spring源码学习笔记12——总结篇,IOC,Bean的生命周期,三大扩展点

    Spring源码学习笔记12--总结篇,IOC,Bean的生命周期,三大扩展点 参考了Spring 官网文档 https://docs.spring.io/spring-framework/docs/ ...

  3. spring源码学习之路---深入AOP(终)

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 上一章和各位一起看了一下sp ...

  4. spring源码学习之路---IOC初探(二)

    作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 上一章当中我没有提及具体的搭 ...

  5. Spring源码学习

    Spring源码学习--ClassPathXmlApplicationContext(一) spring源码学习--FileSystemXmlApplicationContext(二) spring源 ...

  6. Spring源码学习-容器BeanFactory(四) BeanDefinition的创建-自定义标签的解析.md

    写在前面 上文Spring源码学习-容器BeanFactory(三) BeanDefinition的创建-解析Spring的默认标签对Spring默认标签的解析做了详解,在xml元素的解析中,Spri ...

  7. Spring源码学习-容器BeanFactory(三) BeanDefinition的创建-解析Spring的默认标签

    写在前面 上文Spring源码学习-容器BeanFactory(二) BeanDefinition的创建-解析前BeanDefinition的前置操作中Spring对XML解析后创建了对应的Docum ...

  8. Spring源码学习-容器BeanFactory(二) BeanDefinition的创建-解析前BeanDefinition的前置操作

    写在前面 上文 Spring源码学习-容器BeanFactory(一) BeanDefinition的创建-解析资源文件主要讲Spring容器创建时通过XmlBeanDefinitionReader读 ...

  9. Spring源码学习-容器BeanFactory(一) BeanDefinition的创建-解析资源文件

    写在前面 从大四实习至今已一年有余,作为一个程序员,一直没有用心去记录自己工作中遇到的问题,甚是惭愧,打算从今日起开始养成写博客的习惯.作为一名java开发人员,Spring是永远绕不过的话题,它的设 ...

随机推荐

  1. 20165322 实验四 《Android程序设计》

    实验四 <Android程序设计> 任务一 实验内容 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECANDROID,安装 Androi ...

  2. Uva 11922 Splay

    Splay(伸展树)实现可分裂与合并的序列 对于BST,除了Treap树之外,还有一种Splay的伸展树,他能快速的分裂与合并. 重要的操作是伸展操作,将一个指定的结点 x 旋转到根的过程. 分三种情 ...

  3. Html5简单描述(优点与缺点)

    什么是HTML5 HTML5指的是包括HTML.CSS和JavaScript在内的一套技术组合.它希望能够减少网页浏览器对于需要插件的丰富性网络应用服务(Plug-in-Based Rich Inte ...

  4. CSS 中定位方式有几种,说明他们的意义

    1.static  默认定位方式 显示为没有设置定位时的位置 2.fixed(固定定位)  他所相对固定的对象是可视窗口,与其他无关.以浏览器窗口作为参考进行定位 3.relative(相对定位) 元 ...

  5. mycat常用的分片规则

    一.枚举法<tableRule name="sharding-by-intfile">    <rule>      <columns>user ...

  6. django-模板层基础2

    1.模板的导入 {% include 模板名%} 首先在你的的项目中,需要很多地方用到同一个组件(相对于头部,你进行每个页面的切换,网页最上面的头 部不需要改变),那么这样我们可以把那个头部重新写在一 ...

  7. Evercookie

    1. Evercookie Evercookie是一个Javascript API,可以在浏览器中生成极其持久的cookie. 它的目标是在客户删除标准cookie,Flash cookie(本地共享 ...

  8. 洛谷P1709 [USACO5.5]隐藏口令Hidden Password(最小表示法)

    题目描述 有时候程序员有很奇怪的方法来隐藏他们的口令.Binny会选择一个字符串S(由N个小写字母组成,5<=N<=5,000,000),然后他把S顺时针绕成一个圈,每次取一个做开头字母并 ...

  9. BZOJ3277: 串(广义后缀自动机)

    Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1196  Solved: 478[Submit][Status][Discuss] Descripti ...

  10. ABAP术语-ABAP Dictionary

    ABAP Dictionary 原文链接:http://www.cnblogs.com/qiangsheng/archive/2007/12/07/986204.html Central redund ...