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

SpringBoot核心@SpringBootApplication使用介紹

 更新時(shí)間:2022年03月21日 10:58:25   作者:盲目的拾荒者  
這篇文章主要介紹了SpringBoot核心@SpringBootApplication的使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

@SpringBootApplication的使用

1. Spring Boot 的核心

1.1. 入口類(lèi)和 @SpringBootApplication

Spring Boot的項(xiàng)目一般都會(huì)有*Application的入口類(lèi),入口類(lèi)中會(huì)有main方法,這是一個(gè)標(biāo)準(zhǔn)的Java應(yīng)用程序的入口方法。

@SpringBootApplication注解是Spring Boot的核心注解,它其實(shí)是一個(gè)組合注解: 

該注解主要組合了以下注解:

@SpringBootConfiguration:這是Spring Boot項(xiàng)目的配置注解,這也是一個(gè)組合注解:

在Spring Boot項(xiàng)目中推薦使用@ SpringBootConfiguration替代@Configuration

@EnableAutoConfiguration:?jiǎn)⒂米詣?dòng)配置,該注解會(huì)使Spring Boot根據(jù)項(xiàng)目中依賴(lài)的jar包自動(dòng)配置項(xiàng)目的配置項(xiàng):

如:我們添加了spring-boot-starter-web的依賴(lài),項(xiàng)目中也就會(huì)引入SpringMVC的依賴(lài),Spring Boot就會(huì)自動(dòng)配置tomcat和SpringMVC 

@ComponentScan:默認(rèn)掃描@SpringBootApplication所在類(lèi)的同級(jí)目錄以及它的子目錄。

1.2 關(guān)閉自動(dòng)配置

通過(guò)上述,我們得知,Spring Boot會(huì)根據(jù)項(xiàng)目中的jar包依賴(lài),自動(dòng)做出配置,Spring Boot支持的自動(dòng)配置如下(非常多):

如果我們不需要Spring Boot自動(dòng)配置,想關(guān)閉某一項(xiàng)的自動(dòng)配置,該如何設(shè)置呢?

比如: 我們不想自動(dòng)配置 Redis ,想手動(dòng)配置。

當(dāng)然了,其他的配置就類(lèi)似了

@SpringBootApplication及pom講解

@SpringBootApplication 主要有以下注解組成

@SpringBootConfiguration
@EnableAutoConfiguration

@SpringBootConfiguration

Spring Boot 配置類(lèi), 它本質(zhì)上是@Configuration

@Configuration配置類(lèi)注解,它本質(zhì)上是一個(gè)組件@Component

@Configuration
public @interface SpringBootConfiguration {
@Component
public @interface Configuration {

@EnableAutoConfiguration 開(kāi)啟自動(dòng)配置功能

有了這個(gè)注解,以前我們需要自己配置的東西,現(xiàn)在都交由spring boot配置

@AutoConfigurationPackage
@Import({AutoConfigurationImportSelector.class})
public @interface EnableAutoConfiguration {

1. @AutoConfigurationPackage

@Import({Registrar.class})
public @interface AutoConfigurationPackage {

在Registrar–>registerBeanDefinitions–>AutoConfigurationPackages.register中,如下圖:

獲得@SpringBootApplication 標(biāo)注類(lèi)的包名,并把該包下的所有組件掃描到spring容器中(在registerBeanDefinition中將對(duì)象放到beanDefinition中)

2. @Import({AutoConfigurationImportSelector.class})

Spring Boot啟動(dòng)時(shí)從META-INF/spring.factories文件中獲取EnableAutoConfiguration所指定的值,將這些值作為自動(dòng)配置類(lèi)導(dǎo)入容器中,自動(dòng)配置類(lèi)就生效,幫我們進(jìn)行自動(dòng)配置工作。

Spring啟動(dòng)器

spring-boot-starter-parent–>依賴(lài)于spring-boot-dependencies

Spring 的版本管理中心,我們導(dǎo)入的包默認(rèn)不需要寫(xiě)版本(如果沒(méi)在dependencies里管理的需要注明版本)

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

SpringBoot 場(chǎng)景啟動(dòng)器

SpringBoot將所有的功能場(chǎng)景都抽取出來(lái),做成Starters, 只需要在項(xiàng)目里引入這些starter, 相關(guān)依賴(lài)都會(huì)導(dǎo)進(jìn)來(lái)。要用什么功能就導(dǎo)入什么場(chǎng)景的starter。

<!-- spring boot幫我們導(dǎo)入web模塊正常運(yùn)行所依賴(lài)的組件: jason, spring-webmvc, spring-web等-->
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring Boot 2.x基礎(chǔ)教程之配置元數(shù)據(jù)的應(yīng)用

    Spring Boot 2.x基礎(chǔ)教程之配置元數(shù)據(jù)的應(yīng)用

    這篇文章主要介紹了Spring Boot 2.x基礎(chǔ)教程之配置元數(shù)據(jù)的應(yīng)用,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-01-01
  • JAVA動(dòng)態(tài)維度笛卡爾積輸出的實(shí)現(xiàn)

    JAVA動(dòng)態(tài)維度笛卡爾積輸出的實(shí)現(xiàn)

    本文主要介紹了JAVA動(dòng)態(tài)維度笛卡爾積輸出的實(shí)現(xiàn),通過(guò)動(dòng)態(tài)生成笛卡爾積,可以方便地處理多維數(shù)據(jù)集,提高數(shù)據(jù)處理效率,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • Java實(shí)現(xiàn)注冊(cè)登錄與郵箱發(fā)送賬號(hào)驗(yàn)證激活功能

    Java實(shí)現(xiàn)注冊(cè)登錄與郵箱發(fā)送賬號(hào)驗(yàn)證激活功能

    這篇文章主要介紹了Java實(shí)現(xiàn)注冊(cè)登錄與郵箱發(fā)送賬號(hào)驗(yàn)證激活功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2022-12-12
  • java實(shí)現(xiàn)樹(shù)形菜單對(duì)象

    java實(shí)現(xiàn)樹(shù)形菜單對(duì)象

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)樹(shù)形菜單對(duì)象,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • SpringBoot整合RabbitMQ實(shí)現(xiàn)六種工作模式的示例

    SpringBoot整合RabbitMQ實(shí)現(xiàn)六種工作模式的示例

    這篇文章主要介紹了SpringBoot整合RabbitMQ實(shí)現(xiàn)六種工作模式,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • 詳解Java中JSON數(shù)據(jù)的生成與解析

    詳解Java中JSON數(shù)據(jù)的生成與解析

    今天給大家?guī)?lái)的是關(guān)于Java的相關(guān)知識(shí),文章圍繞著Java中JSON數(shù)據(jù)的生成與解析展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Jenkins安裝和插件管理配置入門(mén)教程

    Jenkins安裝和插件管理配置入門(mén)教程

    這篇文章主要介紹了Jenkins安裝和插件管理知識(shí),本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • Java語(yǔ)言描述存儲(chǔ)結(jié)構(gòu)與鄰接矩陣代碼示例

    Java語(yǔ)言描述存儲(chǔ)結(jié)構(gòu)與鄰接矩陣代碼示例

    這篇文章主要介紹了Java語(yǔ)言描述存儲(chǔ)結(jié)構(gòu)與鄰接矩陣代碼示例,涉及Java存儲(chǔ)結(jié)構(gòu),鄰接矩陣,鄰接表的介紹與比較,然后分享了鄰接矩陣的Java實(shí)現(xiàn)等相關(guān)內(nèi)容,具有一定借鑒價(jià)值,需要的朋友可以參考。
    2017-11-11
  • Hibernate中5個(gè)核心接口知識(shí)點(diǎn)整理

    Hibernate中5個(gè)核心接口知識(shí)點(diǎn)整理

    在本篇文章里小編給大家整理的是一篇關(guān)于Hibernate中5個(gè)核心接口知識(shí)點(diǎn)整理等內(nèi)容,有興趣的朋友們跟著學(xué)習(xí)參考下。
    2021-08-08
  • 基于Java驗(yàn)證jwt token代碼實(shí)例

    基于Java驗(yàn)證jwt token代碼實(shí)例

    這篇文章主要介紹了基于Java驗(yàn)證jwt token代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12

最新評(píng)論

齐齐哈尔市| 阿城市| 凤城市| 罗山县| 贵溪市| 大悟县| 新田县| 六枝特区| 巴彦淖尔市| 元阳县| 建德市| 定襄县| 郎溪县| 淳安县| 东莞市| 福建省| 牡丹江市| 乌苏市| 桂阳县| 民和| 基隆市| 华阴市| 武鸣县| 靖远县| 平南县| 安乡县| 额济纳旗| 辰溪县| 滨州市| 芜湖市| 古交市| 文登市| 灵丘县| 江门市| 恭城| 冕宁县| 西城区| 教育| 胶南市| 竹溪县| 三原县|