【出现频率】★★★★☆ 【学习难度】★★★★☆

答案:Starter(启动器)是一套方便的依赖,它可以很方便地引入自己的程序中,它简化了很多烦琐的配置,并且实现了开箱即用。通过在pom.xml中添加Starter依赖,用户可以一站式的获取所需要的Spring 依赖和相关配置,它主要完成两件事情。

1)引入模块所需的相关 jar 包。

2)自动配置各自模块所需的一些初始化参数。

Spring Boot致力于快速产品就绪应用程序,Starter就是实现这一目标的利器,使用一个Starter只需要两个条件——maven依赖和配置文件。例如,当要操作MongoDB时,只需要在工程的pom.xml中添加spring-boot-starter-data-Mongodb依赖,然后在配置文件application.yml(或application.properties)中配置MongoDB的链接信息spring.data.mongodb.uri=mongodb://localhost/testdb,就可以愉快地使用MongoTemplate来访问MongoDB操作数据了,

MongoTemplate的初始化工作由spring-boot-starter-data-mongodb自动完成。有点类似Javascript与Eclipse及Idea的插件。有的甚至无须配置,或者只需要加一个注解,直接启动项目就可以了。

如何区别一个Starter是官方提供的还是第三方自己开发的呢?只需要看这个Starter的名称即可,Spring提供的Starter命名规范为spring-boot-starter-xxx.jar,第三方提供的Starter命名规范为xxx-spring-boot-starter.jar。例如:mybatis-spring-boot-starter这是MyBatis团队提供的,而spring-boot-starter-data-jpa就是官方提供的。