上一页 1 2 3 4 5 6 ··· 12 下一页
摘要: 1.简介 从本篇文章开始,我将会对 Spring AOP 部分的源码进行分析。本文是 Spring AOP 源码分析系列文章的第二篇,本文主要分析 Spring AOP 是如何为目标 bean 筛选出合适的通知器(Advisor)。在上一篇AOP 源码分析导读一文中,我简单介绍了 AOP 中的一些术 阅读全文
posted @ 2020-03-27 15:10 windy杨树 阅读(276) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 前一段时间,我学习了 Spring IOC 容器方面的源码,并写了数篇文章对此进行讲解。在写完 Spring IOC 容器源码分析系列文章中的最后一篇后,没敢懈怠,趁热打铁,花了3天时间阅读了 AOP 方面的源码。开始以为 AOP 部分的源码也会比较复杂,所以原计划投入一周的时间用于阅读 阅读全文
posted @ 2020-03-27 15:09 windy杨树 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 本篇文章是“Spring IOC 容器源码分析”系列文章的最后一篇文章,本篇文章所分析的对象是 initializeBean 方法,该方法用于对已完成属性填充的 bean 做最后的初始化工作。相较于之前几篇文章所分析的源码,initializeBean 的源码相对比较简单,大家可以愉快的 阅读全文
posted @ 2020-03-27 11:28 windy杨树 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 本篇文章,我们来一起了解一下 Spring 是如何将配置文件中的属性值填充到 bean 对象中的。我在前面几篇文章中介绍过 Spring 创建 bean 的流程,即 Spring 先通过反射创建一个原始的 bean 对象,然后再向这个原始的 bean 对象中填充属性。对于填充属性这个过程 阅读全文
posted @ 2020-03-27 11:13 windy杨树 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 本文,我们来看一下 Spring 是如何解决循环依赖问题的。在本篇文章中,我会首先向大家介绍一下什么是循环依赖。然后,进入源码分析阶段。为了更好的说明 Spring 解决循环依赖的办法,我将会从获取 bean 的方法getBean(String)开始,把整个调用过程梳理一遍。梳理完后,再 阅读全文
posted @ 2020-03-27 11:12 windy杨树 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 本篇文章是上一篇文章(创建单例 bean 的过程)的延续。在上一篇文章中,我们从战略层面上领略了doCreateBean方法的全过程。本篇文章,我们就从战术的层面上,详细分析doCreateBean方法中的一个重要的调用,即createBeanInstance方法。在本篇文章中,你将看到 阅读全文
posted @ 2020-03-27 11:08 windy杨树 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 在上一篇文章中,我比较详细的分析了获取 bean 的方法,也就是getBean(String)的实现逻辑。对于已实例化好的单例 bean,getBean(String) 方法并不会再一次去创建,而是从缓存中获取。如果某个 bean 还未实例化,这个时候就无法命中缓存。此时,就要根据 be 阅读全文
posted @ 2020-03-26 20:40 windy杨树 阅读(395) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 为了写 Spring IOC 容器源码分析系列的文章,我特地写了一篇 Spring IOC 容器的导读文章。在导读一文中,我介绍了 Spring 的一些特性以及阅读 Spring 源码的一些建议。在做完必要的准备工作后,从本文开始,正式开始进入源码分析的阶段。 在本篇文章中,我将会详细分 阅读全文
posted @ 2020-03-26 19:41 windy杨树 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 1. 简介 Spring 是一个轻量级的企业级应用开发框架,于 2004 年由 Rod Johnson 发布了 1.0 版本。经过十几年的迭代,现在的 Spring 框架已经非常成熟了。Spring 包含了众多模块,包括但不限于 Core、Bean、Context、AOP 和 Web 等。在今天,我 阅读全文
posted @ 2020-03-26 19:40 windy杨树 阅读(174) 评论(0) 推荐(0) 编辑
摘要: Spring 是一个轻量级的 J2EE 开源框架,其目标是降低企业级应用开发难度,提高企业级应用开发效率。在日程开发中,我们会经常使用 Spring 框架去构建应用。所以作为一个经常使用的框架,了解其原理还是很有必要的。接下来我们就从宏观层面上,来看看 Spring 中的 bean 由实例化到销毁的 阅读全文
posted @ 2020-03-26 19:27 windy杨树 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 1. 背景 本文承接上文,来继续说说 IOC 和 AOP 的仿写。在上文中,我实现了一个很简单的 IOC 和 AOP 容器。上文实现的 IOC 和 AOP 功能很单一,且 IOC 和 AOP 两个模块没有整合到一起。IOC 在加载 bean 过程中,AOP 不能对 bean 织入通知。在本文中,我们 阅读全文
posted @ 2020-03-26 19:26 windy杨树 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 1. 背景 我在大四实习的时候开始接触 J2EE 方面的开发工作,也是在同时期接触并学习 Spring 框架,到现在也有快有两年的时间了。不过之前没有仿写过 Spring IOC 和 AOP,只是宏观上对 Spring IOC 和 AOP 原理有一定的认识。所以为了更进一步理解 Spring IOC 阅读全文
posted @ 2020-03-26 19:25 windy杨树 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 1. 概述 Java 提供了一种对象序列化的机制,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。把对象转换为字节序列的过程称为对象的 序列化。 将序列化对象写入文件后,可以从文件中读取出来,并且对它进行反序列化,对象的类型信息、对象的数据 阅读全文
posted @ 2020-03-26 19:01 windy杨树 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 1. Class 类 Class 是一个类,封装了当前对象所对应的类的信息,一个类中有属性,方法,构造器等。 对于每个类而言,JRE 都为其保留一个不变的 Class 类型的对象。一个 Class 对象包含了特定某个类的有关信息。 Class 对象只能由系统建立对象,一个类(而不是一个对象)在 Ja 阅读全文
posted @ 2020-03-26 18:46 windy杨树 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 1. 概述 Java 泛型(generics)是 JDK 5 中引入的一个新特性,泛型提供了 编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。 泛型,即 参数化类型。将类型由原来的具体的类型(类似于方法的变量参数,该变量定义了具体的类型),也定义成参数形式(可以称之为类型形参),然 阅读全文
posted @ 2020-03-26 18:34 windy杨树 阅读(276) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 12 下一页