配置優(yōu)先級(jí)
優(yōu)先級(jí)(低→高)
application.yaml(忽略)
application.yml
application.properties
java系統(tǒng)屬性(-Dxxx=xxx)
命令行參數(shù)(–xxx=xxx)
Bean管理
1.獲取bean
上述所說的【Spring項(xiàng)目啟動(dòng)時(shí),會(huì)把其中的bean都創(chuàng)建好】還會(huì)受到作用域及延遲初始化影響,這里主要針對(duì)于默認(rèn)的單例非延遲加載的bean而言。
2.bean作用域
可以通過@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
SpringBoot原理
SpringBoot的自動(dòng)配置就是當(dāng)spring容器啟動(dòng)后,一些配置類、bean對(duì)象就自動(dòng)存入到了IOC容器中,不需要我們手動(dòng)去聲明,從而簡化了開發(fā),省去了繁瑣的配置操作。
Maven高級(jí)
1.分模塊設(shè)計(jì)與開發(fā)
將項(xiàng)目按照功能拆分成若干個(gè)子模塊,方便項(xiàng)目的管理維護(hù)、擴(kuò)展,也方便模塊間的相互調(diào)用,資源共享。(將項(xiàng)目分成若干個(gè)maven模塊,引入maven依賴相互調(diào)用)
2.繼承與聚合
jar:普通模塊打包,springboot項(xiàng)目基本都是jar包(內(nèi)嵌tomcat運(yùn)行)
war:普通web程序打包,需要部署在外部的tomcat服務(wù)器中運(yùn)行
pom:父工程或聚合工程,該模塊不寫代碼,僅進(jìn)行依賴管理
若父子工程都配置了同一個(gè)依賴的不同版本,以子工程的為準(zhǔn)。
< dependencies >是直接依賴,在父工程配置了依賴,子工程會(huì)直接繼承下來。
< dependencyManagement >是統(tǒng)一管理依賴版本,不會(huì)直接依賴,還需要在子工程中引入所需依賴(無需指定版本)
作用:
聚合 用于快速構(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.介紹
2.資源上傳與下載
使用私服,需要在maven的settings.xml配置文件中,做如下配置:
-
需要在 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>
-
在 mirrors 中只配置我們自己私服的連接地址(如果之前配置過阿里云,需要直接替換掉)
<mirror> <id>maven-public</id> <mirrorOf>*</mirrorOf> <url>http://192.168.150.101:8081/repository/maven-public/</url> </mirror>
-
需要在 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>
-
如果需要上傳自己的項(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>
-
發(fā)布項(xiàng)目,直接運(yùn)行 deploy 生命周期即可 (發(fā)布時(shí),建議跳過單元測試)文章來源:http://www.zghlxwxcb.cn/news/detail-461810.html
?文章來源地址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)!