最近在学习 spring 源码, 随着学习的深入, 在感叹 spring 的强大的同时, 也觉得学的越多, 好像不明白的地方越多, 因此决定开始写博客, 以此用来记录学习的过程.
很多人平时工作学习中可能也会零零散散的看过一些 spring 的源码, 但是都是在自己的项目中, 看过 spring 的 jar 包中的 class 或者 source. 从今天开始, 我要在 spring 的项目中看源码, 做调试... 感觉自己要起飞了!
一, spring 本地环境构建
以下环境都是基于 Windows 10 系统搭建
java 版本: 8+
- IDE:idea2019.2.3
- gradle:5.6.3
jdk 下载安装略过
gradle 下载安装:
spring 源码下载:
这里啰嗦一句: 建议 IDE 用 idea 最新的 2019.2.3 版本, spring framework 选择 5.1.x, 由于大多数人工作中都在使用 maven 做构建工具, spring 官方是使用 gradle 做构建的, 不过构建工具都大同小异, 简单了解一下就好了.
OK, 话不多说, 进入正题
选择 5.1.x 版本, 由于下载速度问题, 不直接 Git clone, 选择下载 zip 包到本地, 以下演示源码下载, 环境构建, 编译, 测试的整个过程.
spring5.1.x 源码下载
idea 中构建 spring 项目
新增 project-
以下一直下一步, 最后编译时间比较长, 应该在 1 小时左右, 运气不好要半天, 哈哈没办法, 等着就好.
测试 demo
在 spring 项目中新建一个 module, 在改 moudle 中新建一个测试类 TestService.java
配置类如下
main 方法执行如下
我们可以看到, 在新创建的 moudle 里面的测试类加上了 @component 注解, 经过 spring 容器启动后我们通过 ac.getBean(TestService.class) 这行代码成功的获得的 spring 容器中的对象.
至此, 我们成功的完成的 spring 开发环境的搭建, 并通过 DEMO 进行了验证, 下面我们将开启 spring 的全新旅程, 开始读源码啦!
来源: http://www.bubuko.com/infodetail-3286885.html