第一章 spring-boot源码篇

一。学java的都知道,spring 框架是现在的主流框架。所以我觉得要看源码,必须先从spring的源码开始,因为它是我们经常用的东西,如果不把我们经常使用的东西摸透,总觉得有点虚,哪天要栽在上面,就会有些不甘了。

spring boot 是在spring的基础上开发出来的,是为了方便开发者快速搭建spring 项目的,也是现在流行使用的,所以干脆就看spring boot 的源码吧。好了,话不多说,先到git上下载源码。地址:https://github.com/spring-projects/spring-boot

看源码之前 先去了解一下spring boot 架构,了解完整体架构后再开始从入口一步步去看,正在编译源码,今天先到这,明天继续。。

二。spring boot 源码 模块

1,spring-boot

为Spring Boot其他部分功能提供主要的lib包,其中包含:

(1)SpringApplication类提供了静态便利的方法使编写独立的SpringApplication更加容易.它唯一的任务就是创建和刷新一个适当的Spring ApplicationContext.

(2)为嵌入式web应用选择一个容器(Tomcat、Jetty或者Undertow)

(3)对外部化配置的支持超级好

(4)ApplicationContext初始化很方便,包含默认支持合理的日志记录

2,spring-boot-autoconfigure

Spring Boot可以在classpath中配置大部分公共程序.仅仅一个@EnableAutoConfiguration注释就能触发Spring上下文的自动配置.

3,spring-boot-starters

Starters是一组方便的依赖描述符,可以包含在你的应用程序中.

你可以为所有Spring和相关技术提供一站式服务,而无需搜索示例代码并复制大量的依赖描述符.

例如,如果你想开始使用Spring和JPA访问数据库,只需要在你的项目中包含spring-boot-starter-data-jpa依赖项,然后你就可以继续.

4,spring-boot-cli

spring命令行应用程序编译并运行Groovy源代码,使编写代码变的非常容易,从而使应用程序能够运行.

Spring CLI还可以监听文件,在文件更新时候自动编译和重启启动.

5,spring-boot-actuator

actuator endpoints允许你监视应用程序并且与其进行交互.

spring boot actuator提供了actuator endpoints所需的基础设施.

它包含对actuator endpoints的注释支持.

这个模块提供了许多端点,包括HealthEndpoint、EnvironmentEndpoint、BeanEndpoint等等.

6,spring-boot-actuator-autoconfigure

这个模块为actuator endpoints提供了基于classpath内容和一组属性的自动配置.

例如,如果Micrometer是在classpath中,它将自动配置MtricsEndpoing.它包含通过HTTP或JMX配置expose endpoints.

就像Spring Boot AutoConfigure一样,当用户开始自定义自己的beans时,它将退出.

7,spring-boot-test

这个模块包含核心项和注释,在测试应用程序的时候可能会有所帮助.

8,spring-boot-test-autoconfigure

像Spring Boot AutoConfigure模块,spring-boot-test-autoconfigure在classpath中为tests提供自动配置.

它包括许多注释,这些注释可以被用于自动配置需要测试的应用程序的一个片段.

9,spring-boot-loader

Spring Boot Loader提供秘密武器,允许你构建一个可以使用java-jar启动的jar文件.

通常情况下你不需要直接使用spring-boot-laoder,而是使用Gradle或者Maven 插件.

10,spring-boot-devtools

spring-boot-devtools模块提供开发时特性,例如自动重新启动,对于更流畅的应用开发经验.

在运行完整打包的应用时,将自动禁用开发工具.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,240评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,328评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,182评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,121评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,135评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,093评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,013评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,854评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,295评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,513评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,678评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,398评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,989评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,636评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,801评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,657评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,558评论 2 352

推荐阅读更多精彩内容