国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

spring-Bean管理-springboot原理-Maven高級(jí)

這篇具有很好參考價(jià)值的文章主要介紹了spring-Bean管理-springboot原理-Maven高級(jí)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

配置優(yōu)先級(jí)

spring-Bean管理-springboot原理-Maven高級(jí)
spring-Bean管理-springboot原理-Maven高級(jí)

優(yōu)先級(jí)(低→高)
application.yaml(忽略)
application.yml
application.properties
java系統(tǒng)屬性(-Dxxx=xxx)
命令行參數(shù)(–xxx=xxx)

Bean管理

1.獲取bean

spring-Bean管理-springboot原理-Maven高級(jí)

上述所說的【Spring項(xiàng)目啟動(dòng)時(shí),會(huì)把其中的bean都創(chuàng)建好】還會(huì)受到作用域及延遲初始化影響,這里主要針對(duì)于默認(rèn)的單例非延遲加載的bean而言。

2.bean作用域

spring-Bean管理-springboot原理-Maven高級(jí)

可以通過@Scope注解來進(jìn)行配置作用域:@Scope( “prototype”)
默認(rèn)singleton的bean,在容器啟動(dòng)時(shí)被創(chuàng)建,可以使用@Lazy注解來延遲初始化(延遲到第一次使用時(shí))。prototype的bean,每一次使用該bean的時(shí)候都會(huì)創(chuàng)建一個(gè)新的實(shí)例。
實(shí)際開發(fā)當(dāng)中,絕大部分的Bean是單例的,也就是說絕大部分Bean不需要配置scope屬性。

3.第三方bean

spring-Bean管理-springboot原理-Maven高級(jí)

SpringBoot原理

SpringBoot的自動(dòng)配置就是當(dāng)spring容器啟動(dòng)后,一些配置類、bean對(duì)象就自動(dòng)存入到了IOC容器中,不需要我們手動(dòng)去聲明,從而簡化了開發(fā),省去了繁瑣的配置操作。
spring-Bean管理-springboot原理-Maven高級(jí)
spring-Bean管理-springboot原理-Maven高級(jí)

Maven高級(jí)

1.分模塊設(shè)計(jì)與開發(fā)

將項(xiàng)目按照功能拆分成若干個(gè)子模塊,方便項(xiàng)目的管理維護(hù)、擴(kuò)展,也方便模塊間的相互調(diào)用,資源共享。(將項(xiàng)目分成若干個(gè)maven模塊,引入maven依賴相互調(diào)用)

spring-Bean管理-springboot原理-Maven高級(jí)

2.繼承與聚合

spring-Bean管理-springboot原理-Maven高級(jí)

jar:普通模塊打包,springboot項(xiàng)目基本都是jar包(內(nèi)嵌tomcat運(yùn)行)
war:普通web程序打包,需要部署在外部的tomcat服務(wù)器中運(yùn)行
pom:父工程或聚合工程,該模塊不寫代碼,僅進(jìn)行依賴管理

spring-Bean管理-springboot原理-Maven高級(jí)

若父子工程都配置了同一個(gè)依賴的不同版本,以子工程的為準(zhǔn)。

spring-Bean管理-springboot原理-Maven高級(jí)

< dependencies >是直接依賴,在父工程配置了依賴,子工程會(huì)直接繼承下來。
< dependencyManagement >是統(tǒng)一管理依賴版本,不會(huì)直接依賴,還需要在子工程中引入所需依賴(無需指定版本)

spring-Bean管理-springboot原理-Maven高級(jí)
spring-Bean管理-springboot原理-Maven高級(jí)

作用:
聚合 用于快速構(gòu)建項(xiàng)目
繼承 用于簡化依賴配置、統(tǒng)一管理依賴
相同點(diǎn):
聚合與繼承的pom.xml文件打包方式均為pom,可以將兩種關(guān)系制作到同一個(gè)pom文件中
聚合與繼承均屬于設(shè)計(jì)型模塊,并無實(shí)際的模塊內(nèi)容
不同點(diǎn):
聚合是在聚合工程中配置關(guān)系,聚合可以感知到參與聚合的模塊有哪些
繼承是在子模塊中配置關(guān)系,父模塊無法感知哪些子模塊繼承了自己

3.私服
1.介紹

spring-Bean管理-springboot原理-Maven高級(jí)

2.資源上傳與下載

spring-Bean管理-springboot原理-Maven高級(jí)
使用私服,需要在maven的settings.xml配置文件中,做如下配置:

  1. 需要在 servers 標(biāo)簽中,配置訪問私服的個(gè)人憑證(訪問的用戶名和密碼)

    <server>
        <id>maven-releases</id>
        <username>admin</username>
        <password>admin</password>
    </server>
        
    <server>
        <id>maven-snapshots</id>
        <username>admin</username>
        <password>admin</password>
    </server>
    
  2. mirrors 中只配置我們自己私服的連接地址(如果之前配置過阿里云,需要直接替換掉)

    <mirror>
        <id>maven-public</id>
        <mirrorOf>*</mirrorOf>
        <url>http://192.168.150.101:8081/repository/maven-public/</url>
    </mirror>
    
  3. 需要在 profiles 中,增加如下配置,來指定snapshot快照版本的依賴,依然允許使用

<profile>
    <id>allow-snapshots</id>
        <activation>
        	<activeByDefault>true</activeByDefault>
        </activation>
    <repositories>
        <repository>
            <id>maven-public</id>
            <url>http://192.168.150.101:8081/repository/maven-public/</url>
            <releases>
            	<enabled>true</enabled>
            </releases>
            <snapshots>
            	<enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
</profile>
  1. 如果需要上傳自己的項(xiàng)目到私服上,需要在項(xiàng)目的pom.xml文件中,增加如下配置,來配置項(xiàng)目發(fā)布的地址(也就是私服的地址)

    <distributionManagement>
        <!-- release版本的發(fā)布地址 -->
        <repository>
            <id>maven-releases</id>
            <url>http://192.168.150.101:8081/repository/maven-releases/</url>
        </repository>
        
        <!-- snapshot版本的發(fā)布地址 -->
        <snapshotRepository>
            <id>maven-snapshots</id>
            <url>http://192.168.150.101:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>
    
  2. 發(fā)布項(xiàng)目,直接運(yùn)行 deploy 生命周期即可 (發(fā)布時(shí),建議跳過單元測試)

?文章來源地址http://www.zghlxwxcb.cn/news/detail-461810.html

到了這里,關(guān)于spring-Bean管理-springboot原理-Maven高級(jí)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Spring5系列學(xué)習(xí)文章分享---第一篇(概述+特點(diǎn)+IOC原理+IOC并操作之bean的XML管理操作)

    Spring5系列學(xué)習(xí)文章分享---第一篇(概述+特點(diǎn)+IOC原理+IOC并操作之bean的XML管理操作)

    開篇: 歡迎來到 Spring 5 學(xué)習(xí)系列!在這個(gè)系列中,我們將深入研究 Spring 框架的最新版本,揭示其在現(xiàn)代Java開發(fā)中的精髓。無論你是初學(xué)者還是有經(jīng)驗(yàn)的開發(fā)者,本系列都旨在為你提供深刻的理解和實(shí)用的知識(shí),讓你在構(gòu)建強(qiáng)大、可維護(hù)和高效的應(yīng)用程序方面更上一層樓。

    2024年01月22日
    瀏覽(224)
  • SpringBoot 插件 spring-boot-maven-plugin 原理,以及SpringBoo工程部署的 jar 包瘦身實(shí)戰(zhàn)

    SpringBoot 插件 spring-boot-maven-plugin 原理,以及SpringBoo工程部署的 jar 包瘦身實(shí)戰(zhàn)

    我們直接使用 maven package (maven自帶的package打包功能),打包Jar包的時(shí)候,不會(huì)將該項(xiàng)目所依賴的Jar包一起打進(jìn)去,在使用 java -jar 命令啟動(dòng)項(xiàng)目時(shí)會(huì)報(bào)錯(cuò),項(xiàng)目無法正常啟動(dòng)。這個(gè)時(shí)候,我們就可以考慮引用 spring-boot-maven-plugin 插件來為項(xiàng)目打Jar包。 maven項(xiàng)目的pom.xml中,添

    2024年02月06日
    瀏覽(25)
  • spring高級(jí)源碼50講-1-8(spring容器與bean)

    1) 容器接口 BeanFactory 接口,典型功能有: getBean ApplicationContext 接口,是 BeanFactory 的子接口。它擴(kuò)展了 BeanFactory 接口的功能,如: 國際化 通配符方式獲取一組 Resource 資源 整合 Environment 環(huán)境(能通過它獲取各種來源的配置信息) 事件發(fā)布與監(jiān)聽,實(shí)現(xiàn)組件之間的解耦 可以

    2024年02月10日
    瀏覽(14)
  • 一文讀懂 Spring Bean 的生命周期,unity高級(jí)工程師面試題

    一文讀懂 Spring Bean 的生命周期,unity高級(jí)工程師面試題

    實(shí)例化 該對(duì)象不再被使用時(shí)通過垃圾回收機(jī)制進(jìn)行回收 而對(duì)于 Spring Bean 的生命周期來說: 實(shí)例化 Instantiation 屬性賦值 Populate 初始化 Initialization 銷毀 Destruction 實(shí)例化 - 屬性賦值 - 初始化 - 銷毀 只有四個(gè)步驟,這樣拆解的話是不是感覺也不難?不像其他人寫的那樣直接一上

    2024年04月09日
    瀏覽(48)
  • Spring 高級(jí)依賴注入 —— Bean的延遲依賴查找功能,ObjectFactory 和 ObjectProvider

    首先明確一下什么是延遲查找,一般來說通過 @Autowired 注解注入一個(gè)具體對(duì)象的方式是屬于實(shí)時(shí)依賴查找,注入的前提是要保證對(duì)象已經(jīng)被創(chuàng)建。而使用延遲查找的方式是我可以不注入對(duì)象的本身,而是通過注入一個(gè)代理對(duì)象,在需要用到的地方再去取其中真實(shí)的對(duì)象來使用

    2024年02月05日
    瀏覽(16)
  • Spring: Bean的創(chuàng)建原理解析

    Spring: Bean的創(chuàng)建原理解析

    1.讀取Bean的定義信息 通過BeanDefinitionReader這個(gè)接口解析xml配置、配置類或其他的一些方式定義的類,得到BeanDefinition(Bean定義信息) 2.實(shí)例化Bean 通過BeanPostProcessor這個(gè)接口(增強(qiáng)器)可以對(duì)我們的BeanDefinition進(jìn)行一些修改,然后BeanFactory通過反射實(shí)例化Bean對(duì)象,但是此時(shí)的

    2024年02月06日
    瀏覽(12)
  • Spring Bean 別名處理原理分析

    Spring Bean 別名處理原理分析

    今天來和小伙伴們聊一聊 Spring 中關(guān)于 Bean 別名的處理邏輯。 別名,顧名思義就是給一個(gè) Bean 去兩個(gè)甚至多個(gè)名字。整體上來說,在 Spring 中,有兩種不同的別名定義方式: 定義 Bean 的 name 屬性,name 屬性在真正的處理過程中,實(shí)際上就是按照別名來處理的。 通過 alias 標(biāo)簽定

    2024年02月09日
    瀏覽(13)
  • spring bean的三級(jí)緩存原理

    當(dāng)我們?cè)谑褂?Spring 框架時(shí),通常會(huì)遇到循環(huán)依賴、AOP 代理等問題。為了解決這些問題,Spring 引入了三級(jí)緩存機(jī)制, 即 singletonObjects、earlySingletonObjects 和 singletonFactories 三個(gè)緩存。本文將詳細(xì)介紹 Spring 三級(jí)緩存的原理和作用。 在 Spring 框架中,Bean 實(shí)例化和依賴注入是非常

    2024年02月04日
    瀏覽(13)
  • 【Java Spring】SpringBoot Bean詳解

    【Java Spring】SpringBoot Bean詳解

    上一節(jié)我們介紹了五大類注解,這一節(jié)介紹方法注解@Bean,@Bean作用的對(duì)象是方法, 該注解需要搭配五大類注解同時(shí)進(jìn)行使用 ,因?yàn)轭惙椒ǖ臄?shù)量遠(yuǎn)遠(yuǎn)大于類的數(shù)量,如果使用@Bean注解標(biāo)記方法的類沒有被標(biāo)記,那么Spring Boot項(xiàng)目在啟動(dòng)時(shí)需要遍歷所有的類的所有方法,開銷無

    2024年04月27日
    瀏覽(22)
  • Maven高級(jí)-分模塊開發(fā)&依賴管理

    Maven高級(jí)-分模塊開發(fā)&依賴管理

    目標(biāo) 理解并實(shí)現(xiàn)分模塊開發(fā) (1)按照功能拆分 我們現(xiàn)在的項(xiàng)目都是在一個(gè)模塊中,比如前面的SSM整合開發(fā)。雖然這樣做功能也都實(shí)現(xiàn)了,但是也存在了一些問題,我們拿銀行的項(xiàng)目為例來聊聊這個(gè)事。 網(wǎng)絡(luò)沒有那么發(fā)達(dá)的時(shí)候,我們需要到銀行柜臺(tái)或者取款機(jī)進(jìn)行業(yè)務(wù)操作

    2023年04月09日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包