spring - 简介

spring

轻量级

  • 零配置变成
  • API使用简单

面向bean

  • 只需要编写非常普通的bean

松耦合

  • 充分利用AOP思想

万能胶

  • 与主流框架无缝集成

设计模式

  • 将java中进店调的设计模式运用的淋漓尽致

简化开发

  • 基于entry的轻量级和最小侵入性变成
  • 通过依赖注入和面向接口松耦合
  • 基于且米娜和惯性进行声明式变成
  • 通过切面和模板减少样版式代码

IOC、IOC容器

业务人员不需要实例化和对对象的管理,只需要让spring知道对象创建的方式,剩下的事情都是spring来做。
等到需要使用它的时候直接拿来用就行了。
ioc容器其实就是存储实例化的bean

注入的方式

  • set方法
  • 构造方法
  • 强制赋值

AOP

主要思想是:解耦
过程:先把一个有规律的整体拆了,分别开发,等到发布的时候,再组装起来。

  • 事务 transaction
  • 权限认证 authentication
  • 日志 logging
  • 懒加载 lazy loading
  • 上下文处理 context process
  • 错误跟踪(异常捕获机制) error handler
  • cache 缓存

整体架构


spring 4架构图:

源码编译

官方github

不同版本的源码要对应不同的gradle、jdk

文件夹内有相应的README.MD文件,可以查看具体的环境配置


修改Gradlew.bat中相应的版本配置


解压后的源码不被ide工具识别,需要进行编译转换,解压后的文件夹内有相关的转换指导

1
2
3
idea 导入方法,执行以下两个命令
gradlew.bat
gradlew.bat cleanIdea :spring-oxm:compileTestJava

3.2.6.RELEASE -> 1.6 gradle / jdk7

3.2.6.RELEASE 已编译版

3.2.6.RELEASE 已编译版下载

5.0.4.RELEASE 已编译版

5.0.4.RELEASE 已编译版下载