Hello World细节-场景启动器(starter)|学习笔记

简介: 快速学习Hello World细节-场景启动器(starter)

开发者学堂课程【SpringBoot快速掌握 - 核心技术:Hello World细节-场景启动器(starter) 】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/612/detail/9218


Hello World细节-场景启动器(starter)

内容介绍

一、pom文件

二、总结

 

一、POM文件:

在 pom 文件里,导入了相关依赖,这些依赖导入了很多  jar  包,首先这里应该有一个  parent 。

1.父项目

导入了一个父项目, boot-starter-parent,Sprintboot 所有 starter 的父项目,主是用来做依赖管理,父项目还依赖一个父项目,他的父项目是:

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-dependencies</artifactId>

<version>1.5.12.RELEASE</version>

<relativePath>../../spring-boot-dependencies</relativePath>

</parent>

properties 属性里面有一个 Dependency versions ,定义了每一个依赖的版本,比如 activemq 的依赖,包括做切面的 aspect 的版本号, 都做了依赖管理。它是来管理 Spring Boot 应用里面的所有依赖版本,管理所有的这些依赖,也可以称为 Springboot 的版本

有了仲裁中心,导入依赖,默认是不需要写版本的,MYSQL驱动默认是不需要写版本的,包括所有的版本

依赖都在 dependecy 里面,没有在 dependency 管理的,要写版本,需要声明版本号,这个是第一个版本仲裁。                

2、导入的依赖

父项目只是作为一个版本仲裁,除了依赖这个父项目以外,还有一个 stater-web ,导入了一个依赖

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

spring-boot-starter-web :

导入了这个依赖,此依赖也没有写版本号,因为 SpringtBoot 进行了自动仲裁,然后他被命名为 spring-boot-starter-web ,把它拆分成两个词,一个是 sprint-boot-starter, 一个是 web 。

帮助导入了 web 模块正常运行所依赖的组件,场景启动器当使用 web 模块的时候,他会来帮助导入相关的 web 模块,

依赖的版本通过父项目进行仲裁,而在 Springboot 里面,还有更多的类似启动器,可以参考 springboot 的官方文档,

https://docs.spring.io/spring-boot/docs/1.5.22.RELEASE/reference/html/using-boot-build-systems.html

#using-boot-starter

搜索一下 Starters

Starters are a set of convenient dependency descriptors that you can include in your application.

我们就会获得相应的依赖, spring-boot 将所有的功能,都抽取出来了一个个场景,如我们要使用 activemq ,那么就有 activemq 的启动器,

如果要用 amqp 高级消息队列,就有这个启动器,如果要做 aop 功能,就导入这个启动器,比如要做数据 jpa 访问,

spring-boot-starter-activemq

spring-boot-starter-amqp

spring-boot-starter-aop

spring-boot-starter-data-jpa

如果左数据访问的 redis 模块, spring-boot-starter-data-redis

导入这个数据,如果要进行邮件开发,就导入 spring-boot-starter-mail 。如果要进行 web 开发,就导入 spring-boot-starter-web

 

二、总结

Sprintboot 将所有的功能场景,都抽取出来,然后做成一个个的 starters ,称之为启动器,用户只需要在项目里面,引入这些 starter ,相关

场景的所有依赖,都会导入进来,而且版本由 springboot 进行自动控制,用户要用某一个功能,就导什么场景,用户就不需要交依赖了,就叫启动器,使用此功能以后,每一种场景, sprintboot 都会帮助用户考虑,不需要导入这个启动器,应用就可以运行,用户点击就有 pom 文件来描述。


相关文章
|
8月前
|
负载均衡 Java 物联网
SpringCloud简介和用处
SpringCloud简介和用处
171 0
|
3月前
|
XML Java 数据格式
Spring从入门到入土(xml配置文件的基础使用方式)
本文详细介绍了Spring框架中XML配置文件的使用方法,包括读取配置文件、创建带参数的构造对象、使用工厂方法和静态方法创建对象、对象生命周期管理以及单例和多例模式的测试。
130 7
Spring从入门到入土(xml配置文件的基础使用方式)
|
7月前
|
Java 应用服务中间件 Maven
Springboot入门基础知识详解 parent starter 引导类 辅助功能
Springboot入门基础知识详解 parent starter 引导类 辅助功能
62 2
|
Java Spring 容器
Spring Boot入门(十五) 之 国际化操作(页面的中英文相互切换)
Spring Boot入门(十五) 之 国际化操作(页面的中英文相互切换)
823 0
|
缓存 Java Spring
一张图彻底搞懂Spring循环依赖
循环依赖就是指循环引用,是两个或多个Bean相互之间的持有对方的引用。BeanA 类依赖了Bean B类,同时Bean B类又依赖了Bean A类。这种依赖关系形成了一个闭环,我们把这种依赖关系就称之为循环依赖。Bean A类依赖了Bean B类,Bean B类依赖了Bean C类,Bean C类依赖了Bean A类,如此,也形成了一个依赖闭环。自己引用了自己,自己和自己形成了依赖关系。同样也是一个依赖闭环。
479 1
|
Java Spring
springboot自定义Banner图(项目启动时打印的spring图)
springboot项目启动一般是以这种方式启动:SpringApplication.run(App.class);
|
Java 测试技术 Maven
【Spring学习笔记 二】构建第一个Sping框架程序
【Spring学习笔记 二】构建第一个Sping框架程序
68 0
|
Java 应用服务中间件 数据库连接
头秃系列,二十三张图带你从源码分析Spring Boot 启动流程~
前言 源码版本 从哪入手? 源码如何切分? 如何创建SpringApplication? 设置应用类型 设置初始化器(Initializer) 设置监听器(Listener) 设置监听器(Listener) 执行run()方法 获取、启动运行过程监听器 环境构建 创建IOC容器 IOC容器的前置处理 刷新容器 IOC容器的后置处理 发出结束执行的事件 执行Runners 总结 总结
|
Java Maven Spring
你有没有掉进去过这些Spring Boot中的“陷阱“(上)(二)
你有没有掉进去过这些Spring Boot中的“陷阱“(上)
你有没有掉进去过这些Spring Boot中的“陷阱“(上)(二)
|
前端开发 Java 数据库连接
你有没有掉进去过这些Spring Boot中的“陷阱“(上)(一)
你有没有掉进去过这些Spring Boot中的“陷阱“(上)
你有没有掉进去过这些Spring Boot中的“陷阱“(上)(一)