Spring 源码分析之:Spring-Core模块

概括

image

  • asm: 字节码框架,能动态改变jvm里面的字节码
  • cglib:代码生成库
  • core: 核心包
  • lang: 一些注解
  • util: 帮助类,为其他模块提供帮助

关系图
image


asm

通过ASM,能做到动态修改字节码文件,得到动态语言的效果


cglib

image
代码生成库,一个lib库,Spring用它来实现动态代理,生成字节码文件


core

image
image
image

1. 根目录:别名注册、属性访问
AliasRegistry:别名注册
AttributeAccessor:对对象元数据的访问接口
Ordered:排序功能
2. annotation目录:注解、元注解、合并的注解等
3. codec目录:encode(编码器)和decode(解码器)
4. convert目录:主要是转换器服务,将一个类型转换位另外一个类型
5. env目录:就是配置文件Profiles
6. io目录:一些读取资源的类
这里的IO不是JDK里面的IO,这里主要是读取

image

7. log目录:几个日志类,利用的是Apache Log
8. serializer目录:序列化、反序列化类
9. style目录:代码风格
10. task目录:可执行任务类
任务执行器,继承了JDK的Executor,用来执行Runnable类型的task
11. type目录:Class元数据、注解元数据、过滤器等

关系图
image


lang

image


util

原文地址:https://www.cnblogs.com/lyd447113735/p/14974914.html