最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot淺析依賴管理與自動(dòng)配置概念與使用

 更新時(shí)間:2022年10月17日 08:42:59   作者:一根頭發(fā)學(xué)一年  
一般來講SpringBoot項(xiàng)目是不需要指定版本,而SSM項(xiàng)目是需要指定版本,SpringBoot的核心依賴就是spring-boot-starter-parent和spring-boot-starter-web兩個(gè)依賴,這篇文章主要介紹了SpringBoot依賴管理與自動(dòng)配置概念與使用

說明:基于atguigu學(xué)習(xí)筆記。部分內(nèi)容涉及上一章節(jié),請參考以下鏈接。

上一章:Spring boot 介紹和簡易入門

依賴管理

自動(dòng)版本仲裁

在上一節(jié)創(chuàng)建Spring Boot項(xiàng)目時(shí),看到,引入了一個(gè)父項(xiàng)目。如下:

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.3.4.RELEASE</version>
</parent>

父項(xiàng)目的主要作用是依賴管理。父項(xiàng)目已經(jīng)聲明了很多需要的依賴及其版本,子項(xiàng)目如果繼承了父項(xiàng)目,則不需要再聲明版本號(也稱自動(dòng)版本仲裁)。除非你不需要父項(xiàng)目的版本號。

點(diǎn)擊查看父項(xiàng)目,可以看到,還有一個(gè)父項(xiàng)目是spring-boot-dependencies。如下:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-dependencies</artifactId>
    <version>2.7.0</version>
</parent>

再點(diǎn)進(jìn)去看到這個(gè)父項(xiàng)目維護(hù)了很多依賴的版本,如下:

<properties>
    <activemq.version>5.16.5</activemq.version>
    <antlr2.version>2.7.7</antlr2.version>
    <appengine-sdk.version>1.9.96</appengine-sdk.version>
    <artemis.version>2.19.1</artemis.version>
    <aspectj.version>1.9.7</aspectj.version>
    <assertj.version>3.22.0</assertj.version>
    <atomikos.version>4.0.6</atomikos.version>
    <awaitility.version>4.2.0</awaitility.version>
    <build-helper-maven-plugin.version>3.3.0</build-helper-maven-plugin.version>
    <byte-buddy.version>1.12.10</byte-buddy.version>
    <cache2k.version>2.6.1.Final</cache2k.version>
    <caffeine.version>2.9.3</caffeine.version>
    <cassandra-driver.version>4.14.1</cassandra-driver.version>
    <classmate.version>1.5.1</classmate.version>
    <commons-codec.version>1.15</commons-codec.version>
    <commons-dbcp2.version>2.9.0</commons-dbcp2.version>
    <commons-lang3.version>3.12.0</commons-lang3.version>
    <commons-pool.version>1.6</commons-pool.version>
    <commons-pool2.version>2.11.1</commons-pool2.version>
    <couchbase-client.version>3.3.0</couchbase-client.version>
    <db2-jdbc.version>11.5.7.0</db2-jdbc.version>
    <dependency-management-plugin.version>1.0.11.RELEASE</dependency-management-plugin.version>
    <derby.version>10.14.2.0</derby.version>
    <dropwizard-metrics.version>4.2.9</dropwizard-metrics.version>
    <ehcache.version>2.10.9.2</ehcache.version>
    <ehcache3.version>3.10.0</ehcache3.version>
    <elasticsearch.version>7.17.3</elasticsearch.version>
    <embedded-mongo.version>3.4.5</embedded-mongo.version>
  	<!-- 等等還有很多 -->

如果不想要父項(xiàng)目的版本,引入依賴時(shí)可以自己定義版本號,如下:

<properties>
    <mysql.version>5.1.43</mysql.version>
</properties>

starter啟動(dòng)器

上個(gè)章節(jié),引入依賴時(shí),只引入了spring-boot-starter-web這一個(gè)依賴。像這種spring-boot-starter-* 的依賴就是start啟動(dòng)器。他是一種場景的所有依賴集合描述,比如spring-boot-starter-web就是web開始所需要的所有依賴的集合描述。只要引入這一個(gè)依賴,就會(huì)把web開發(fā)場景所需要的依賴全都引入。

只要引入starter,這個(gè)場景的所有常規(guī)需要的依賴都自動(dòng)引入。

注意像這種spring-boot-starter-格式的啟動(dòng)器一般是官方提供的。也可以自己創(chuàng)建,官方建議,自己創(chuàng)建的格式是-spring-boot-starter,比如很多第三方提供的簡化開發(fā)的場景啟動(dòng)器。

自動(dòng)配置

上面我們看到,當(dāng)引入spring-boot-starter-web啟動(dòng)器的時(shí)候,spring boot會(huì)自動(dòng)幫我們做很多配置。

1.自動(dòng)引入Tomcat依賴并配好Tomcat。

2.自動(dòng)配好SpringMVC: 引入并配置好SpringMVC全套組件。

3.自動(dòng)配好Web常見功能,如:字符編碼問題。

4.配置好默認(rèn)的包結(jié)構(gòu): 主程序所在包及其下面的所有子包里面的組件都會(huì)被默認(rèn)掃描進(jìn)來, 想要改變掃描路徑,在@SpringBootApplication注解里使scanBasePackages屬性指定,或者使用@ComponentScan注解。

@SpringBootApplication注解源碼可以看到,@SpringBootApplication注解相當(dāng)于以下3個(gè)注解:@SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan(“com.example”)

5.各種配置分配了默認(rèn)值

6.按需加載所有自動(dòng)配置項(xiàng): 引入了哪些場景,這個(gè)場景的自動(dòng)配置才會(huì)開啟。SpringBoot所有的自動(dòng)配置功能都在 spring-boot-autoconfigure 包里面。

到此這篇關(guān)于SpringBoot淺析依賴管理與自動(dòng)配置概念與使用的文章就介紹到這了,更多相關(guān)SpringBoot依賴管理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • SpringBoot使用Redis單機(jī)版過期鍵監(jiān)聽事件的實(shí)現(xiàn)示例

    SpringBoot使用Redis單機(jī)版過期鍵監(jiān)聽事件的實(shí)現(xiàn)示例

    在緩存的使用場景中經(jīng)常需要使用到過期事件,本文主要介紹了SpringBoot使用Redis單機(jī)版過期鍵監(jiān)聽事件的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • 詳解安裝Eclipse Maven插件的幾種方法

    詳解安裝Eclipse Maven插件的幾種方法

    本篇文章主要介紹了詳解安裝Eclipse Maven插件的幾種方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • 詳解Springboot中的異步、定時(shí)、郵件任務(wù)

    詳解Springboot中的異步、定時(shí)、郵件任務(wù)

    這篇文章主要介紹了Springboot中的異步、定時(shí)、郵件任務(wù),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2021-11-11
  • 老生常談Java字符串進(jìn)階(必看篇)

    老生常談Java字符串進(jìn)階(必看篇)

    下面小編就為大家?guī)硪黄仙U凧ava字符串進(jìn)階(必看篇)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • java中JSqlParser的使用

    java中JSqlParser的使用

    JSqlParse是一款很精簡的sql解析工具,它可以將常用的sql文本解析成具有層級結(jié)構(gòu)的語法樹,本文主要介紹了java中JSqlParser的使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-07-07
  • 深入理解 Java注解及實(shí)例

    深入理解 Java注解及實(shí)例

    這篇文章主要介紹了深入理解 Java注解及實(shí)例的相關(guān)資料,希望通過本文大家能夠掌握java注解的知識,需要的朋友可以參考下
    2017-09-09
  • MyBatis的五種批量查詢實(shí)例總結(jié)

    MyBatis的五種批量查詢實(shí)例總結(jié)

    為了提高代碼的執(zhí)行效率,我們有時(shí)需要采用批量查詢的查詢方法,下面這篇文章主要給大家介紹了關(guān)于MyBatis的五種批量查詢的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • JAVA實(shí)現(xiàn)連接本地打印機(jī)并打印文件的實(shí)現(xiàn)代碼

    JAVA實(shí)現(xiàn)連接本地打印機(jī)并打印文件的實(shí)現(xiàn)代碼

    這篇文章主要介紹了JAVA實(shí)現(xiàn)連接本地打印機(jī)并打印文件的實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2019-10-10
  • 最流行的java后臺框架spring quartz定時(shí)任務(wù)

    最流行的java后臺框架spring quartz定時(shí)任務(wù)

    近日項(xiàng)目開發(fā)中需要執(zhí)行一些定時(shí)任務(wù),比如需要在每天凌晨時(shí)候,分析一次前一天的日志信息,借此機(jī)會(huì)整理了一下定時(shí)任務(wù)的幾種實(shí)現(xiàn)方式,由于項(xiàng)目采用spring框架,所以我都將結(jié)合spring框架來介紹
    2015-12-12
  • Java發(fā)送報(bào)文與接收報(bào)文的實(shí)例代碼

    Java發(fā)送報(bào)文與接收報(bào)文的實(shí)例代碼

    這篇文章主要介紹了Java發(fā)送報(bào)文與接收報(bào)文,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03

最新評論

米脂县| 夏津县| 陇西县| 阜平县| 澄迈县| 章丘市| 淮安市| 贵州省| 高阳县| 磴口县| 耿马| 六安市| 西华县| 昭平县| 裕民县| 诸城市| 徐水县| 玉溪市| 班玛县| 图木舒克市| 广灵县| 美姑县| 淅川县| 邛崃市| 商丘市| 民勤县| 绥芬河市| 清水县| 磐安县| 柯坪县| 邯郸县| 岳池县| 雷山县| 自治县| 怀来县| 忻城县| 新和县| 蚌埠市| 环江| 准格尔旗| 定边县|