spring源码:学习线索(li)
一、spring xml配置(不包括AOP,主要了解在初始化及实例化过程中spring配置文件中每项内容的具体实现过程,从根本上掌握spring)
- <bean>的名字 &,alias,id(名称的转换,绑定)
- 属性及构造函数参数注入 (注入过程,类型转换)
- 依赖解析 (显示依赖和自动依赖解析 depends-on,autowire,dependency-check)
- 继承(extends)
- 作用域(singleton,prototype,session等,不同作用域的bean的具体实例化过程)
- 工厂方法与 FactoryBean
- 方法替换(lookup)
- init-memthod destroy-method初始化方法和销毁方法
- spring中BeanFactory相关的特殊bean
- Aware接口系列:BeanFacotryAware;BeanNameAware;BeanClassLoaderAware
二、BeanFactory容器后置处理接口(BeanFactoryPostProcessor)
- PropertyPlaceholderConfigurer;PropertyOverrideConfigurer;CustomEditorConfigurer;CustomScopeConfigurer
- Bean后置处理接口(BeanPostProcessor)InstantiationAwareBeanPostProcessor;DestructionAwareBeanPo;stProcessor;SmartInstantiationAwareBeanPostProcessor
- InitializingBean
- DisposableBean
- ApplicationContext对Spring中BeanFactory的功能扩展
- 统一资源加载(资源的封装与加载)
- 国际化信息支持(MessageSource)
- 容器内部事件
三、基于注解的依赖注入
四、aop部分
- aop中基础接口及类结构关系 (Pointcut,Advice,Aspect)
- ProxyFactoryBean,AopProxyFactory类结构及实现,及AOP与IOC容器的无缝接入
- 自动代理的实现
- 基于AspectJ的AOP
- 基于schema的AOP
五、spring数据库访问支持
- spring统一数据库访问异常体系结构及转换规则
- 模板模式及回调式的jdbc数据库访问方式,DAO支持
- 统一数据源DataSource
- ORM的集成支持
- 缓存
六、spring对事务的支持
- Spring的事务管理器体系结构
- Spring中事务切入实现
- 编程式事务和声明式事务管理
七、BeanFactory
- BeanFactory的体系结构:各接口的职责、各个实现类的核心代码理解
- BeanDefinition的体系
- Resource体系
- 可以看看 XmlBeanFactory是如何解析xml文件, 最终形成 BeanFactory 的
- WebApplicationContext的初始化过程(如果有时间)
八、Maven
- maven 的概念:基本概念、常用插件与插件对应的goal,常用参数、详细理解maven的生命周期、详细理解 maven的依赖管理,repository管理
- maven 的插件机制 (如果有时间)
九、
附录:
1、关于Spring源码的专栏文章:http://www.javaeye.com/wiki/spring-source
2、关于Maven的专业书籍:Maven中文指南.pdf
推荐书名目录:
- Docker技术入门和实战
- 深入理解Java虚拟机
- 持续交付
- Maven 实战
- 鸟哥的 Linux
- Spring Boot实战
- 第一本Docker书
- 深入分析Java Web技术内幕
- 实现领域驱动设计
- Java与模式
- 设计模式
- HBase实战
- 构建高性能web站点
- SpringBoot 揭秘
- 深入分析Java Web 技术内幕
- 设计模式之禅
- 深入浅出Google Android
- UML面向对象建模与设计
- Spring源码深度解析
- HBase权威指南
- 微服务架构与实践
- Docker技术入门和实战
- Spring Boot实战
spring源码:学习线索(li)的更多相关文章
- spring源码学习之路---深入AOP(终)
作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 上一章和各位一起看了一下sp ...
- spring源码学习之路---IOC初探(二)
作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 上一章当中我没有提及具体的搭 ...
- Spring源码学习
Spring源码学习--ClassPathXmlApplicationContext(一) spring源码学习--FileSystemXmlApplicationContext(二) spring源 ...
- Spring源码学习-容器BeanFactory(四) BeanDefinition的创建-自定义标签的解析.md
写在前面 上文Spring源码学习-容器BeanFactory(三) BeanDefinition的创建-解析Spring的默认标签对Spring默认标签的解析做了详解,在xml元素的解析中,Spri ...
- Spring源码学习-容器BeanFactory(三) BeanDefinition的创建-解析Spring的默认标签
写在前面 上文Spring源码学习-容器BeanFactory(二) BeanDefinition的创建-解析前BeanDefinition的前置操作中Spring对XML解析后创建了对应的Docum ...
- Spring源码学习-容器BeanFactory(二) BeanDefinition的创建-解析前BeanDefinition的前置操作
写在前面 上文 Spring源码学习-容器BeanFactory(一) BeanDefinition的创建-解析资源文件主要讲Spring容器创建时通过XmlBeanDefinitionReader读 ...
- Spring源码学习-容器BeanFactory(一) BeanDefinition的创建-解析资源文件
写在前面 从大四实习至今已一年有余,作为一个程序员,一直没有用心去记录自己工作中遇到的问题,甚是惭愧,打算从今日起开始养成写博客的习惯.作为一名java开发人员,Spring是永远绕不过的话题,它的设 ...
- 【目录】Spring 源码学习
[目录]Spring 源码学习 jwfy 关注 2018.01.31 19:57* 字数 896 阅读 152评论 0喜欢 9 用来记录自己学习spring源码的一些心得和体会以及相关功能的实现原理, ...
- Spring 源码学习——Aop
Spring 源码学习--Aop 什么是 AOP 以下是百度百科的解释:AOP 为 Aspect Oriented Programming 的缩写,意为:面向切面编程通过预编译的方式和运行期动态代理实 ...
- Spring 源码学习 04:初始化容器与 DefaultListableBeanFactory
前言 在前一篇文章:创建 IoC 容器的几种方式中,介绍了四种方式,这里以 AnnotationConfigApplicationContext 为例,跟进代码,看看 IoC 的启动流程. 入口 从 ...
随机推荐
- bzoj3037--贪心
题目大意: applepi手里有一本书<创世纪>,里面记录了这样一个故事--上帝手中有着N 种被称作"世界元素"的东西,现在他要把它们中的一部分投放到一个新的空间中去以 ...
- Flex 布局教程:实例篇
该教程整理自 阮一峰Flexible教程 今天介绍常见布局的Flex写法.你会看到,不管是什么布局,Flex往往都可以几行命令搞定. 我的主要参考资料是Landon Schropp的文章和Solved ...
- Maven(一)linux下安装
1.检查是否安装JDK,并且设置了环境变量(JAVA_HOME): echo $JAVA_HOME java -version 运行结果: 显示jdk的安装路径,和java的版本,如: #jdk路径 ...
- PC虚拟现实应用的性能分析与优化:从CPU角度切入
如今,虚拟现实 (VR) 技术正日益受到欢迎,这主要得益于遵循摩尔定律的技术进步让这一全新体验在技术上成为可能.尽管虚拟现实能给用户带来身临其境般的超凡体验,但相比传统应用,其具有双目渲染.低延迟.高 ...
- 把int*传值给char*,打印出错误的数字
首先进入debug模式查看i的地址也就是ptr的值 以16进制位小端模式存储(一个整型四个字节,8位16进制数)(根据系统位数情况) 紧接着因为ptr是char*型指针变量,读取数据时按照一个字节一个 ...
- openfire的组件(Component)开发
在之前的文章<Openfire阶段实践总结>中提到过一种openfire的扩展模式Compoent.本文将主要探讨对这种模式的应用与开发方法. 内部与外部组件介绍 在openfire中的许 ...
- 模仿EF,我们用JS开发的HTML5 SQLite 访问库
今天终于有空把demo放到了RunJS上面去.请使用google chrome观看在线演示: http://sandbox.runjs.cn/show/pekbd9zb 这个库本来是我们开发的phon ...
- App开发的新趋势
移动开发这些年,移动开发者人数越来越多,类似的培训公司发展也很快,不过伴随着的是移动应用的需求这几年发展更为旺盛.要开发好的App,纯原生开发肯定是最佳选择.但是这么多年发展,原生开发的难度并没有降低 ...
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
零.序 一.自定义Style 二.在XML中为属性声明属性值 1. 在layout中定义属性 2. 设置Style 3. 通过Theme指定 三.在运行时获取属性值 1. View的第三个构造函数的第 ...
- EventBus总线讲解
在我们公司经常用到总线,具体的总线是什么让我理解我也不清楚,但是在这几个月下来,我已经知道总线如何使用,现在加上示例讲解总线如何使用. 1. 首先我们的新建一个类,这个类其实是用于总线传递的模型 us ...