一、前言文章目录:Spring源码深度解析:文章目录]()二、Spring整体架构Spring Core:框架的最基础部分,提供 IoC 容器,对 bean 进行管理。Spring Context:继承BeanFactory,提供上下文信息,扩展出JNDI、EJB、电子邮件、国际化等功能。Spring DAO:提供了JDBC的抽象层,还提供了声明性事务管理方法。Spring ORM:提供了JPA、
转载 2024-04-17 15:11:58
62阅读
目录一、概要二、方法调用过程分析三、源码分析3.1 准备工作3.2 refresh()3.3 finishBeanFactoryInitialization()3.4 preInstantiateSingletons()3.5 getBean()3.6 doGetBean()3.7 第2次调用getSingleton()创建对象3.8 createBean(
转载 2024-04-19 11:32:03
43阅读
一、参考资料https://github.com/yuanmabiji/Java-SourceCode-Blogs
原创 2022-07-28 14:15:25
297阅读
摘要:本文结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码。若有描述错误之处,欢迎指正。 前言作为一名开发人员,阅读源码是一个很好的学习方式。本文将结合《Spring源码深度解析》来分析Spring 5.0.6版本的源代码,若有描述错误之处,欢迎指正。Spring是2003年兴起的一个轻量级Java开源框架,旨在解决企业应用开发的复杂性。Spring发展至今,衍
转载 2024-03-20 16:48:28
49阅读
spring源码深度解析—容器的功能扩展(下)接容器的功能扩展(上)6. BeanFactory的后处理BeanFactory作为spring中容器功能的基础,用于存放所有已经加载的bean,为例保证程序上的高可扩展性,spring针对BeanFactory做了大量的扩展,比如我们熟悉的PostProcessor就是在这里实现的。接下来我们就深入分析下BeanFactory后处理6.1 激活注册的
转载 2024-06-20 10:58:15
101阅读
目录动态AOP使用示例创建用于拦截的bean创建Advisor创建配置文件测试动态AOP自定义标签注册AnnotationAwareAspectJAutoProxyCreator注册或者升级AnnotationAwareAspectJAutoProxyCreator处理proxy-target-class以及expose-proxy属性创建AOP代理获取增强器普通增强器的获取增加同步实例化增强器获
转载 2024-05-10 00:31:22
63阅读
源代码:主代码  第1步:  第2步:这里会循环两次,第一次refresh=false第二次为true,这里演示第二次的结果,在其中完成了容器的初始化在refresh()函数中的方法操作如下:1、prepareRefresh();容器刷新前的准备,设置上下文状态,获取属性,验证必要的属性等2、ConfigurableListableBeanFactory b
1.web基础1.servlet3.0新特性Servlet3.0规范是JavaEE6.0规范中的子规范。其要求运行环境最低是JDK6.0, Tomcat7.0而之前学习的是Servlet2.5版本的规范,其是JavaEE5.0规范的子规范。其要求运行环境最低是JDK5.0, Tomcat5.0在Eclipse中使用Serlet3.0规范,则需要在创建动态Web工程时就要指定。其具体用法是,在Ecl
转载 2024-04-03 16:05:35
34阅读
导语:         众所周知,spring是构建Java企业级项目的基础框架。最典型的是通过它的ioc容器,我们可以巧妙的利用组合的方式实现代码的高内聚,低耦合。除此之外,spring还提供了一站式的解决方案(spring全家桶),如web模块的springMVC,微服务架构的springCloud等等。如此可见,spring的重要性不亚于如今
目录介绍1.最简单的创建方法1.1Toast构造方法1.2最简单的创建1.3简单改造避免重复创建1.4为何会出现内存泄漏1.5吐司是系统级别的2.源码分析2.1Toast(Contextcontext)构造方法源码分析2.2show()方法源码分析2.3mParams.token=windowToken是干什么用的2.4scheduleTimeoutLocked吐司如何自动销毁的2.5TN类中的消
原创 2018-11-01 17:36:04
2226阅读
絮叨最近准备开始逐步深入学习Spring源码,遂着手学习借阅已久的《Spring源码深度解析》这本书,但是到了第二章导入源码部分的时候碰到了小问题,本想借助度娘的力量轻松解决,但查阅资料都没能很好的解决我的问题(可能本人水平太低-_-|||,有些地方大神们以为很简单不值一提,一笔带过),然后结合大神博客里的方法,加上自己摸索算是解决了此问题吧。 特在此处mark一下,记录此问题方便以后查阅,同时
ConcurrentHashMap源码深度分析蜜獾互联网 2025年07月16日 15:03 山东  1、基本变量//链表转树的阈值 static final int TREEIFY_THRESHOLD = 8; //树转链表的阈值 static final int UNTREEIFY_THRESHOLD = 6; //每次转移的桶的数量,多线程操作时相当
原创 2月前
43阅读
封页编辑推荐帮助读者快速熟悉Spring源码,以便于对Spring源码进行扩展或修改,从而满足业务需求。 所有知识点均已HELLOworld级别示例为切入点,描述简单之后的复杂。 对于复杂逻辑的讲解采用剥洋葱似的方式,层层分解复杂度,便于读者理解和掌握。内容简介《Spring源码深度解析》从核心实现和企业应用两个方面,由浅入深、由易到难地对Spring源码展开了系统的讲解,包括Spring的设计
Spring源码解析 -- 读取bean元数据spring源码解析 -- 构造beanspring源码解析 -- 注入属性spring源码解析 -- Spring ContextSpring源码解析 -- AOP原理(1)Spring源码解析 -- AOP原理(2)Spring源码解析 -- SpringMvc原理源码分析基于spring 4.3.x本文通过阅读Spring MVC的源码,解析Sp
spring源码源码分析(一)mac版idea引入spring源码(二)spring的学习流程(三)spring源码分析【1】refresh()方法概览(AbstractApplicationContext抽象类里的refresh方法)(1)阅读源码进行debug调试的方法【2】通过一张思维导图说明refresh每个方法主要完成的事【3】spring工作流程图(四)spring源码设计架构,
BeanDefinition 实例化Bean,使用反射 BeanDefinition-->Bean 反射可以获取对象的注解、构造器、属性等信息。 Class<?> userClass = Class.forName("com.nisco.system.entity.User"); Construct ...
转载 2021-08-16 08:12:00
114阅读
2评论
spring在我们的java开发中使用很多,IOC作为spring最基础的组件,被大家所熟知,但是spring具体是怎么
原创 2022-12-12 16:21:35
91阅读
  1、源代码下载 download:http://www.springsource.org/download spring 3 download: http://www.springsource.com/download/community spring 3 source code svn:https://src.springframework.org/svn/spr
原创 2010-11-07 23:19:11
935阅读
一、Java注解  全面解析JAVA注解  JAVA 注解的基本原理
原创 2023-01-05 12:13:11
64阅读
前言大家好,我是子路,一个靠Java吃饭的男人前两篇文章:从源码的角度来解读spring的循环引用(一)——生命周期源码深度解析spring的循环引用(二)——逐条解读代码 已经介绍完了循环依赖在Bean生命周期中的体现,以及对每一条代码做出了诠释。这篇文章将接着上面两篇文章,完成Spring当中的循环应用的讲解。正文我先给出这个方法的源码全貌;重点我用红色标记了,并且会在进行代码解析;黄色线下面
  • 1
  • 2
  • 3
  • 4
  • 5