SpringBoot依赖及其作用分析

 更新时间:2024年03月05日 10:24:15   作者:喵喵@香菜  
这篇文章主要介绍了SpringBoot依赖及其作用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

将看到的Spring Boot依赖记录下来;

下列dependency采用从父依赖继承版本的方式:

Spring Boot 父依赖如下:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.6.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

SpringBoot的依赖和其描述及其dependency:

1)名称 : spring-boot-starter

描述:核心Spring Boot starter ,包括自动配置支持,日志和YAML;

2)名称 :spring-boot-starter-actuator

描述:生产准备的特性,用于帮你监控和管理应用;

pom:

<!--从父依赖那继承版本号,下面省略此注释-->
<!--生产准备的特性,用于帮你监控和管理应用  -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

3)名称 :spring-boot-starter-amqp

描述:对高级消息队列协议的支持,通过spring-rabbit实现;

pom:

<!--对高级消息队列协议的支持,通过SpringBoot-rabbit实现  -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-amqp</artifactId>
</dependency>

4)名称 :spring-boot-starter-aop

描述:对面向切面变成的支持,通过spring-aop和AspectJ

pom:

<!--对面向切面变成的支持,通过spring-aop和AspectJ -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-aop</artifactId>
</dependency>

5)名称 :spring-boot-starter-batch

描述:对Spring batch 的支持,包括HSQLDB数据库

pom:

<!--对Spring batch 的支持,包括HSQLDB数据库  -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-batch</artifactId>
</dependency>

6)名称 :spring-boot-starter-cloud-connection

描述:对Spring Cloud Connection的支持,简化在云平台下(例如,Cloud Foundry和Heroku)服务的连接;

7)名称 :spring-boot-starter-elasticsearch

描述:对Elasticsearche搜索和分析引擎的支持,包括spring-data-elasticsearch;

8)名称 :spring-boot-starter-data-gemfire

描述:对GemFire分布式数据存储的支持,包括spring-data-gemfire;

pom:

<!--对GemFire分布式数据存储的支持,包括spring-data-gemfire-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-gemfire</artifactId>
</dependency>

9)名称 :spring-boot-starter-data-jpa

描述:对java持久化API的支持,包括Spring-data-jpa,spring-orm和Hibernate;

pom:

<!--对java持久化API的支持,包括Spring-data-jpa,spring-orm和Hibernate-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

10)名称 :spring-boot-starter-data-mongodb

描述:对MongoDB NOSQL数据库的支持,包括spring-data-mongodb;

pom:

<!--对MongoDB NOSQL数据库的支持,包括spring-data-mongodb-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>

11)名称 :spring-boot-starter-data-rest

描述:通过对REST暴露Spring data仓库的支持,通过spring-data-rest-webmvc实现;

pom:

 <!--通过对REST暴露Spring data仓库的支持,通过Spring-data-rest-webmvc实现-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-rest</artifactId>
</dependency>

12)名称 :spring-boot-starter-data-solr

描述:对Apache Solr搜索平台的支持,包括spring-data-solr;

pom:

<!--对Apache Solr搜索平台的支持,包括spring-data-solr-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-solr</artifactId>
</dependency>

13)名称 :spring-boot-starter-freemaker

描述:对FreeMarker模板引擎的支持;

pom:

<!--对FreeMarker模板引擎的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

14)名称 :spring-boot-starter-Groovy

描述:对Groovy模板引擎的支持;

15)名称 :spring-boot-starter-hateoas

描述:对基于HATEOAS的RESTful服务的支持,通过spring-hateoas;

pom:

<!--对基于HATEOAS的RESTful服务的支持,通过Spring-hateoas;-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-hateoas</artifactId>
</dependency>

16)名称 :spring-boot-starter-integration

描述:对普通spring-integration模块的支持;

pom:

<!--对普通Spring-integration模块的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-integration</artifactId>
</dependency>

17)名称 :spring-boot-starter-hornetq

描述:对”java消息服务API”的支持,通过HornetQ实现;

18)名称 :spring-boot-starter-jdbc

描述:对JDBC数据库的支持;

pom:

<!--对JDBC数据库的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>

19)名称 :spring-boot-starter-jersey

描述:对Jersey RESTful Web服务框架的支持;

pom:

<!--对Jersey RESTful Web服务框架的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jersey</artifactId>
</dependency>

20)名称 :spring-boot-starter-jta-atomikos

描述:对JTA分布式事务的支持。通过Atomikos实现;

pom:

<!--对JTA分布式事务的支持,通过Atomikos-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jta-atomikos</artifactId>
</dependency>

21)名称 :spring-boot-starter-jta-bitronix

描述:对JTA分布式事务的支持,通过Bitronix实现;

pom:

<!--对JTA分布式事务的支持,通过Bitronix实现-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jta-bitronix</artifactId>
</dependency>

22)名称 :spring-boot-starter-mail

描述:对javax.mail的支持;

pom:

<!--对javax.mail的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

23)名称 :spring-boot-starter-mobile

描述:对spring-mobile的支持;

pom:

<!--对spring-mobile的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mobile</artifactId>
</dependency>

24)名称 :spring-boot-starter-redis

描述:对REDIS键值数据存储的支持,包括Spring-redis;

25)名称 :spring-boot-starter-security

描述:对spring -security模板引擎的支持;

pom:

<!--对spring -security模板引擎的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>

26)名称 :spring-boot-starter-social-facebook

描述:对spring-social-facebook的支持;

pom:

<!--对spring-social-facebook的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-social-facebook</artifactId>
</dependency>

27)名称 :spring-boot-starter-social-twitter

描述:对spring-social-twitter的支持;

pom:

<!--对spring-social-twitter的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-social-twitter</artifactId>
</dependency>

28)名称 :spring-boot-starter-test

描述:对常用测试依赖的支持,包括JUnit,Hamcrest和Mockito还有spring-test模块;

pom:

<!--对常用测试依赖的支持,包括JUnit,Hamcrest和Mockito还有Spring-test模块-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
</dependency>

29)名称 :spring-boot-starter-thymeleaf

描述:对Thymeleaf模板引擎的支持,包括和Spring的集成;

pom:

<!--对Thymeleaf模板引擎的支持,包括和Spring的集成-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

30)名称 :spring-boot-starter-velocity

描述:对velocity模板引擎的支持;

31)名称 :spring-boot-starter-web

描述:对全栈web开发的支持,包括Tomcat和spring-webmvc;

pom:

<!--对全栈web开发的支持,包括Tomcat和spring-webmvc-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

32)名称 :spring-boot-starter-websocket

描述:对websocket开发的支持;

pom:

<!--对websocket开发的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-websocket</artifactId>
</dependency>

33)名称 :spring-boot-starter-ws

描述:对Spring web服务的支持;

最后,Spring Boot包含一些可用于排除或交换具体技术方面的starters;

34)名称 :spring-boot-starter-jetty

描述:导入Jetty HTTP引擎(作为Tomcat的代替);

pom:

<!--导入Jetty HTTP引擎(作为Tomcat的代替-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jetty</artifactId>
</dependency>

35)名称 :spring-boot-starter-logging

描述:对Log4J日志系统的支持;

pom:

<!--对Log4J日志系统的支持-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j</artifactId>
</dependency>

36)名称 :spring-boot-starter-logging

描述:导入SpringBoot的默认日志系统(Logback);

pom:

<!--导入SpringBoot的默认日志系统(Logback-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-logging</artifactId>
</dependency>

37)名称 :spring-boot-starter-tomcat

描述:导入SpringBoot的默认HTTP引擎(Tomcat);

pom:

<!--导入SpringBoot的默认HTTP引擎(Tomcat-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>

38)名称 :spring-boot-starter-undertow

描述:导入Undertow HTTP引擎(作为tomcat的代替);

pom:

<!--导入Undertow HTTP引擎(作为tomcat的代替-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-undertow</artifactId>
</dependency>

参看了资料将常用的和可能用到的依赖记下,最后我的pom:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.zlc</groupId>
    <artifactId>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>demo</name>
    <description>demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.3.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>

        <!--从父依赖那继承版本号-->
        <!--生产准备的特性,用于帮你监控和管理应用  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <!--对高级消息队列协议的支持,通过SpringBoot-rabbit实现  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-amqp</artifactId>
        </dependency>

        <!-- 对面向切面变成的支持,通过spring-aop和AspectJ -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-aop</artifactId>
        </dependency>

        <!--对Spring batch 的支持,包括HSQLDB数据库  -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-batch</artifactId>
        </dependency>

        <!--  对MongoDB NOSQL数据库的支持,包括spring-data-mongodb-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-mongodb</artifactId>
        </dependency>

        <!--  通过对REST暴露Spring data仓库的支持,通过Spring-data-rest-webmvc实现-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-rest</artifactId>
        </dependency>

        <!--  对java持久化API的支持,包括Spring-data-jpa,spring-orm和Hibernate-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-solr</artifactId>
        </dependency>

         <!--  对FreeMarker模板引擎的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>

      <!--  对基于HATEOAS的RESTful服务的支持,通过Spring-hateoas;-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-hateoas</artifactId>
        </dependency>

         <!--  对普通Spring-integration模块的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-integration</artifactId>
        </dependency>

       <!--  对JDBC数据库的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>

         <!--  对Jersey RESTful Web服务框架的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jersey</artifactId>
        </dependency>

         <!--  对JTA分布式事务的支持,通过Atomikos-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jta-atomikos</artifactId>
        </dependency>

        <!--  对JTA分布式事务的支持,通过Bitronix实现-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jta-bitronix</artifactId>
        </dependency>

         <!--  对javax.mail的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>

         <!--  对spring-mobile的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mobile</artifactId>
        </dependency>

       <!--  对spring -security模板引擎的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

         <!--  对spring-social-facebook的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-social-facebook</artifactId>
        </dependency>

         <!--  对spring-social-twitter的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-social-twitter</artifactId>
        </dependency>

        <!--  对常用测试依赖的支持,包括JUnit,Hamcrest和Mockito还有Spring-test模块;-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
        </dependency>

        <!--  对Thymeleaf模板引擎的支持,包括和Spring的集成;-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

         <!--  对全栈web开发的支持,包括Tomcat和spring-webmvc;-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!--  对websocket开发的支持-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-websocket</artifactId>
        </dependency>


         <!--  导入Jetty HTTP引擎(作为Tomcat的代替)-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jetty</artifactId>
        </dependency>

         <!--  导入SpringBoot的默认日志系统(Logback)-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-logging</artifactId>
        </dependency>

        <!--  导入SpringBoot的默认HTTP引擎(Tomcat)-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </dependency>

         <!--  导入Undertow HTTP引擎(作为tomcat的代替)-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-undertow</artifactId>
        </dependency>

        <!--  对GemFire分布式数据存储的支持,包括spring-data-gemfire-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-gemfire</artifactId>

        </dependency>

        <!--  对java持久化API的支持,包括Spring-data-jpa,spring-orm和Hibernate-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <fork>true</fork>
                    <source>1.8</source>  
                    <target>1.8</target>
                </configuration>
            </plugin>           
        </plugins>
    </build>
</project>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java如何在项目中实现excel导入导出功能

    java如何在项目中实现excel导入导出功能

    这篇文章主要介绍了java如何在项目中实现excel导入导出功能的相关资料,EasyExcel是一个基于Apache POI开发的开源Java库,用于简化Excel文件的读写操作,文中将用法介绍的非常详细,需要的朋友可以参考下
    2024-10-10
  • Spring Security拦截器引起Java CORS跨域失败的问题及解决

    Spring Security拦截器引起Java CORS跨域失败的问题及解决

    这篇文章主要介绍了Spring Security拦截器引起Java CORS跨域失败的问题及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • Java学习常用包(类)之java.util包详解

    Java学习常用包(类)之java.util包详解

    这篇文章主要介绍了Java学习常用包(类)之java.util包的相关资料,Java.util包是Java标准类库的重要组成部分,包含集合框架、日期时间类、事件模型、随机数生成器等实用工具类,集合框架提供了多种数据结构和算法,需要的朋友可以参考下
    2024-10-10
  • 一文详解如何更改电脑使用的JDK版本

    一文详解如何更改电脑使用的JDK版本

    我们在日常学习或者工作中,难免会遇到需要使用不同的jdk版本进行开发,这篇文章主要给大家介绍了关于如何更改电脑使用的JDK版本的相关资料,需要的朋友可以参考下
    2024-01-01
  • java分布式基于RestTemplate的使用方法

    java分布式基于RestTemplate的使用方法

    这篇文章主要为大家介绍了java分布式基于RestTemplate的使用方法说明,有需要的朋友可以借鉴参考下希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-02-02
  • Java分形绘制山脉模型

    Java分形绘制山脉模型

    这篇文章主要为大家详细介绍了Java分形绘制山脉模型,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • SSH 框架简介

    SSH 框架简介

    SSH是 struts+spring+hibernate的一个集成框架,是目前较流行的一种web应用程序开源框架。本文给大家详细看一下组成SSH的这三个框架
    2017-09-09
  • Mybatis-Plus动态表名的实现示例

    Mybatis-Plus动态表名的实现示例

    面对复杂多变的业务需求,动态表名的处理变得愈发重要,本文主要介绍了Mybatis-Plus动态表名的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-07-07
  • SpringBoot整合minio快速入门教程(代码示例)

    SpringBoot整合minio快速入门教程(代码示例)

    这篇文章主要介绍了SpringBoot整合minio快速入门实现文件上传和下载的示例代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • 详解Java8新特性如何防止空指针异常

    详解Java8新特性如何防止空指针异常

    要说 Java 编程中哪个异常是你印象最深刻的,那 NullPointerException 空指针可以说是臭名昭著的,不要说初级程序员会碰到, 即使是中级,专家级程序员稍不留神,就会掉入这个坑里,本文就和大家聊聊Java8新特性如何防止空指针异常
    2023-08-08

最新评论