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设计模式中的工厂及抽象工厂模式解析

    Java设计模式中的工厂及抽象工厂模式解析

    这篇文章主要介绍了Java设计模式中的工厂及抽象工厂模式解析,工厂模式作为创建型设计模式中常见的设计方法,一般情况下,工厂模式分为3种,简单工作、工厂方法、抽象工作,其实简单工厂只是工厂方法的一种特例,需要的朋友可以参考下
    2023-12-12
  • Java线程之间数据传递的实现示例(4种)

    Java线程之间数据传递的实现示例(4种)

    我们经常会遇到父子线程数据传递(非调用参数)的场景,本文主要介绍了Java线程之间数据传递的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • Java NIO Buffer过程详解

    Java NIO Buffer过程详解

    这篇文章主要介绍了Java NIO Buffer过程详解,缓冲区在java nio中负责数据的存储。缓冲区就是数组。用于存储不同数据类型的数据。,需要的朋友可以参考下
    2019-06-06
  • IDEA导入eclipse项目并且部署到tomcat的步骤详解

    IDEA导入eclipse项目并且部署到tomcat的步骤详解

    这篇文章主要给大家介绍了关于IDEA导入eclipse项目并且部署到tomcat的相关资料,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-02-02
  • Java使用BigDecimal解决小数计算问题

    Java使用BigDecimal解决小数计算问题

    Java中的BigDecimal是一个内置类,用于精确表示任意大小的十进制数,它提供了一种处理浮点运算精度问题的方法,特别适合金融、货币交易等需要高精度计算的场景,本文给大家介绍了java中如何使用BigDecimal解决小数计算问题,需要的朋友可以参考下
    2024-08-08
  • Java时间戳类Instant的使用详解

    Java时间戳类Instant的使用详解

    这篇文章主要为大家详细介绍了Java中时间戳类Instant的使用方法,文中的示例代码讲解详细,对我们学习Java有一定帮助,需要的可以参考一下
    2022-09-09
  • SpringBoot整合Redisson的步骤(单机版)

    SpringBoot整合Redisson的步骤(单机版)

    Redisson非常适用于分布式锁,而我们的一项业务需要考虑分布式锁这个应用场景,于是我整合它做一个初步简单的例子(和整合redis一样)。
    2021-05-05
  • spring boot基于Java的容器配置讲解

    spring boot基于Java的容器配置讲解

    这篇文章主要介绍了spring boot基于Java的容器配置讲解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • java多线程编程之捕获子线程异常示例

    java多线程编程之捕获子线程异常示例

    java多线程程序中所有线程都不允许抛出未捕获的checked exception,也就是说各个线程需要自己把自己的checked exception处理掉。但是无法避免的是unchecked exception,也就是RuntimeException,当抛出异常时子线程会结束,但不会影响主线程
    2014-02-02
  • Java实现员工管理系统

    Java实现员工管理系统

    这篇文章主要为大家详细介绍了Java实现员工管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01

最新评论