SpringBoot:模块探究之spring-boot-starters
Spring Boot Starters 是一组方便的依赖描述符,您可以将它们包含在您的应用程序中。您可以获得所需的所有 Spring 和相关技术的一站式服务,而无需搜索示例代码和复制粘贴大量依赖项描述符。
例如,如果想使用 Spring 和 JPA 进行数据库访问,只需将
spring-boot-starter-data-jpa
这一依赖项包含在项目中就可以开始了。~
本篇内容包括:Spring Boot Starters 模块介绍、Spring Boot Starters 盘点
文章目录
- 一、Spring Boot Starters 模块介绍
- 1、关于 Spring Boot Starters 模块
- 2、spring-boot-starters 源码地址
- 二、Spring Boot Starters 盘点
- 1、application starters
- 2、production starters
- 3、technical starters
一、Spring Boot Starters 模块介绍
1、关于 Spring Boot Starters 模块
Spring Boot Starters 是一组方便的依赖描述符,您可以将它们包含在您的应用程序中。您可以获得所需的所有 Spring 和相关技术的一站式服务,而无需搜索示例代码和复制粘贴大量依赖项描述符。
例如,如果想使用 Spring 和 JPA 进行数据库访问,只需将 spring-boot-starter-data-jpa
这一依赖项包含在项目中就可以开始了。
2、spring-boot-starters 源码地址
spring-boot-starters 位于 spring-boot 项目中。
spring-boot-starters 在 源码地址为:https://github.com/spring-projects/spring-boot/tree/v2.1.0.RELEASE/spring-boot-project/spring-boot-starters
二、Spring Boot Starters 盘点
1、application starters
# 这一个表格是 Spring Boot 所有应用程序级的 Starters
Starter 名称 | Starter 描述 |
---|---|
spring-boot-starter | 核心 Starter,包括自动配置、日志及 YAML 支持等 |
spring-boot-starter-activemq | 集成 Apache ActiveMQ,基于 JMS 的消息队列 |
spring-boot-starter-artemis | 集成 Apache Artemis,基于 JMS 的消息队列 |
spring-boot-starter-amqp | 集成 Spring AMQP 和 Rabbit MQ 的消息队列 |
spring-boot-starter-aop | 集成 Spring AOP 和 AspectJ 面向切面编程 |
spring-boot-starter-batch | 集成 Spring Batch(批处理) |
spring-boot-starter-cache | 集成 Spring Cache(缓存) |
spring-boot-starter-data-cassandra | 集成 Cassandra(分布式数据库) 和 Spring Data Cassandra |
spring-boot-starter-data-cassandra-reactive | 集成 Cassandra(分布式数据库) 和 Spring Data Cassandra Reactive |
spring-boot-starter-data-couchbase | 集成 Couchbase(文档型数据库) 和 Spring Data Couchbase |
spring-boot-starter-data-couchbase-reactive | 集成 Couchbase(文档型数据库) 和 Spring Data Couchbase Reactive |
spring-boot-starter-data-elasticsearch | 集成 Elasticsearch(搜索引擎)和 Spring Data Elasticsearch |
spring-boot-starter-data-solr | 集成 Apache Solr(搜索引擎)结合 Spring Data Solr |
spring-boot-starter-data-jdbc | 集成 Spring Data JDBC |
spring-boot-starter-data-jpa | 集成 Spring Data JPA 结合 Hibernate |
spring-boot-starter-data-ldap | 集成 Spring Data LDAP |
spring-boot-starter-data-mongodb | 集成 MongoDB(文档型数据库)和 Spring Data MongoDB |
spring-boot-starter-data-mongodb-reactive | 集成 MongoDB(文档型数据库)和 Spring Data MongoDB Reactive |
spring-boot-starter-data-neo4j | 集成 Neo4j(图形数据库)和 Spring Data Neo4j |
spring-boot-starter-data-r2dbc | 集成 Spring Data R2DBC |
spring-boot-starter-data-redis | 集成 Redis(内存数据库)结合 Spring Data Redis 和 Lettuce 客户端 |
spring-boot-starter-data-redis-reactive | 集成 Redis(内存数据库)结合 Spring Data Redis reactive 和 Lettuce 客户端 |
spring-boot-starter-data-rest | 集成 Spring Data REST 暴露 Spring Data repositories 输出 REST 资源 |
spring-boot-starter-thymeleaf | 集成 Thymeleaf 视图构建 MVC web 应用 |
spring-boot-starter-freemarker | 集成 FreeMarker 视图构建 MVC web 应用 |
spring-boot-starter-groovy-templates | 集成 Groovy 模板视图构建 MVC web 应用 |
spring-boot-starter-hateoas | 集成 Spring MVC 和 Spring HATEOAS 构建超媒体 RESTful Web 应用程序 |
spring-boot-starter-integration | 集成 Spring Integration |
spring-boot-starter-jdbc | 集成 JDBC 结合 HikariCP 连接池 |
spring-boot-starter-jersey | 集成 JAX-RS 和 Jersey 构建 RESTful web 应用,是 spring-boot-starter-web 的一个替代 Starter |
spring-boot-starter-jooq | 集成 jOOQ 访问 SQL 数据库,是 spring-boot-starter-data-jpa 或者 spring-boot-starter-jdbc 的替代 Starter |
spring-boot-starter-json | 用于读写 JSON |
spring-boot-starter-jta-atomikos | 集成 Atomikos 实现 JTA 事务 |
spring-boot-starter-jta-bitronix | 集成 Bitronix 实现 JTA 事务( 从 2.3.0 开始标识为 Deprecated) |
spring-boot-starter-mail | 集成 Java Mail 和 Spring 框架的邮件发送功能 |
spring-boot-starter-mustache | 集成 Mustache 视图构建 web 应用 |
spring-boot-starter-security | 集成 Spring Security |
spring-boot-starter-oauth2-client | 集成 Spring Security’s OAuth2/OpenID 连接客户端功能 |
spring-boot-starter-oauth2-resource-server | 集成 Spring Security’s OAuth2 资源服务器功能 |
spring-boot-starter-quartz | 集成 Quartz 任务调度 |
spring-boot-starter-rsocket | 构建 RSocket 客户端和服务端 |
spring-boot-starter-test | 集成 JUnit Jupiter, Hamcrest 和 Mockito 测试 Spring Boot 应用和类库 |
spring-boot-starter-validation | 集成 Java Bean Validation 结合 Hibernate Validator |
spring-boot-starter-web | 集成 Spring MVC 构建 RESTful web 应用,使用 Tomcat 作为默认内嵌容器 |
spring-boot-starter-web-services | 集成 Spring Web Services |
spring-boot-starter-webflux | 集成 Spring Reactive Web 构建 WebFlux 应用 |
spring-boot-starter-websocket | 集成 Spring WebSocket 构建 WebSocket 应用 |
2、production starters
除了上面的应用程序级 starters,还有下面的生产级 Starters 能被用于线上/生产功能:
Starter 名称 | Starter 描述 |
---|---|
spring-boot-starter-actuator | 集成 Spring Boot Actuator,提供生产功能以帮助监控和管理应用程序 |
这个意味着和任何技术、任何业务没关系,只要用了 Spring Boot 框架,上了生产环境就能使用,也不是只有生产才能使用,只是在生产环境使用更能体验它的意义。
3、technical starters
除了应用程序和生产 Starters,Spring Boot 还包括下面的技术类 Starters,用于帮助你排除或者替换指定的框架或技术:
Starter 名称 | Starter 描述 |
---|---|
spring-boot-starter-jetty | 集成 Jetty 作为内嵌的 servlet 容器,可用于替代 spring-boot-starter-tomcat |
spring-boot-starter-log4j2 | 集成 Log4j2 日志框架,可用于替代 spring-boot-starter-logging |
spring-boot-starter-logging | 集成 Logback 日志框架,这个也是默认的日志 Starter |
spring-boot-starter-reactor-netty | 集成 Netty 作为内嵌的响应式 HTTP 服务器 |
spring-boot-starter-tomcat | 集成 Tomcat 作为内嵌的 servlet 容器,这也是默认的 servlet 容器 starter 被集成 spring-boot-starter-web 里面 |
spring-boot-starter-undertow | 集成 Undertow 作为内嵌的 servlet 容器,可用于替代 spring-boot-starter-tomcat |
这个表格的技术也很熟悉了,Spring Boot 默认内嵌 Servlet 容器为 Tomcat,如果你想换成 Jetty、Undertow 或者其他容器,又或者你想换成其他的日志框架,都在这个表格里
SpringBoot:模块探究之spring-boot-starters相关推荐
- Spring Boot Starters介绍
文章目录 Web Start Test Starter Data JPA Starter Mail Starter 结论 对于任何一个复杂项目来说,依赖关系都是一个非常需要注意和消息的方面,虽然重要, ...
- Spring Boot Starters是什么?
这个是Springboot的新发明 降低了项目开始开发的复杂程度. 但是starters到底是什么呢? 如果我们想要在spring中用JPA 传统的做法是: 在Maven中引入使用数据库的依赖(JDB ...
- Spring Boot Starters
Spring Boot Starters 摘自 https://www.nosuchfield.com/2017/10/15/Spring-Boot-Starters/ 2017-10-15 Spri ...
- Spring Boot Starters启动器的简介说明
转自: Spring Boot Starters启动器的简介说明 下文笔者将讲述Spring Boot starter启动器的简介说明,如下所示: Starter是什么 Starters英文意思是:启 ...
- springboot毕设项目基于Spring Boot的智慧天气管理系统84z99(java+VUE+Mybatis+Maven+Mysql)
springboot毕设项目基于Spring Boot的智慧天气管理系统84z99(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8. ...
- 官方Spring Boot starters整理
Spring Boot starters Spring Boot 的功能组件(例如 spring-boot-starter-actuator. spring-boot-starter-data-red ...
- Spring Boot Starters简单介绍
1.概述 依赖管理是任何复杂项目的关键方面.手动完成此操作并不理想; 你花在它上面的时间越多,你在项目的其他重要方面所花费的时间就越少. 构建Spring Boot启动器是为了解决这个问题.Start ...
- 让你的spring-boot应用日志随心所欲--spring boot日志深入分析
1.spring boot日志概述 spring boot使用Commons Logging作为内部的日志系统,并且给Java Util Logging,Log4J2以及Logback都提供了默认的配 ...
- Spring Boot Starters启动器
Starters是什么? Starters可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,你可以一站式集成Spring及其他技术,而不需要到处找示例代码和依赖包.如你想使用Spring J ...
- java开源springboot项目_使用Spring Boot的10多个免费开源项目
这是一个真实的应用程序,为 Spring.io 网站提供支持.它正在生产中,每天都有成千上万的用户使用. 我强烈建议这个项目,你将学习有关Spring框架生态系统,Elasticsearch,Gr ...
最新文章
- 如何最小化云API升级造成的中断?
- Oracle 11g 的bug?: aix 上,expdp 11.2.0.1 导出,impdp 11.2.0.3 导入,Interval 分区的 【Interval】 分区属性成了【N】...
- vue中比较完美请求的栗子(使用 axios 访问 API)
- 一个很简单的淡入淡出相册 (转)
- python哪个方向工资高_Python薪资最高的是一线城市,竟然平均月薪高达20k!
- 史上最详细的SSM框架整合(Spring、SpringMVC、Mybatis)
- 要闻君说:谷歌云重磅发布两大技术平台;以后可以打飞滴了?SAP重组动荡;微软宣布 Azure Functions 支持 Java...
- NOIP2003普及组第1题 乒乓球(Table.cpp)-- python3实现
- Kryo为什么比Hessian快
- quartz获取缓存中所有运行中的Job
- LeetCode——N-Queens II
- 自定义形状下载连接 ps资源
- Android 强制设置应用横屏或竖屏
- python中match方法中r什么意思_什么是pythonre.match函数?(实例解析)
- DHT11大气温湿度模块+直流电机实现根据温度控制风扇转动
- 推荐系统通用用户表征预训练研究进展
- Sharding Sphere 与 Lcn事务区别
- Google Adsense(谷歌网站联盟)广告申请指南
- 搭建可通过外网访问的内网服务器
- 短视频开发要注意哪些问题?
热门文章
- 数组push()方法和concat()方法的区别
- 影响人生的五个经济学思维
- 日本经验 | 百亿染发剂市场谁能称王?资生堂/花王进击细分场景的四个方向
- 阻抗匹配—定义、方式、应用场景
- JS实现深拷贝的三种方式
- 如何在idea中使用翻译
- 飞镖 501 分最快完成比赛法(完美比赛方案)(9镖)
- 查看进程启动时间 linux,Linux详细查看进程启动时间
- java8重写comparator,Java 8 Lambda : Comparator 示例
- python里面的内置函数_【python】函数之内置函数