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

Spring Boot中自動(dòng)化配置的利弊以及解決方法

 更新時(shí)間:2017年08月01日 08:34:24   作者:翟永超  
這篇文章主要給大家介紹了關(guān)于Spring Boot中自動(dòng)化配置的利弊以及解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。

本文主要給大家介紹了關(guān)于Spring Boot自動(dòng)化配置的利弊及解決方法的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面話不多說了,來一起看看詳細(xì)的介紹:

Spring Boot中的雙刃劍:自動(dòng)化配置

在之前的文章中,我們通過各種功能性示例體驗(yàn)了Spring Boot的自動(dòng)化配置給我們所帶來的超便利的新開發(fā)方式。但是,在一些情況下Spring Boot的自動(dòng)化配置也會(huì)給我們?nèi)莵聿簧俚穆闊热邕@些場(chǎng)景:

項(xiàng)目依賴復(fù)雜的情況下,由于依賴方的依賴組織不夠嚴(yán)格,可能引入了一些實(shí)際我們不需要的依賴,從而導(dǎo)致我們的項(xiàng)目滿足一些特定的自動(dòng)化配置。

傳統(tǒng)Spring項(xiàng)目轉(zhuǎn)換為Spring Boot項(xiàng)目的過程中,由于不同的組織方式問題,引發(fā)自動(dòng)化配置加載的錯(cuò)誤,比如:通過xml手工組織的多數(shù)據(jù)源配置等。

上面這些原因都會(huì)導(dǎo)致不必要的自動(dòng)化配置加載而導(dǎo)致應(yīng)用無法啟動(dòng)或觸發(fā)/health的健康檢查不通過等問題。比如,我們?cè)诟脑靷鹘y(tǒng)Spring項(xiàng)目到Spring Boot項(xiàng)目中碰到的一些錯(cuò)誤:

六月 21, 2017 6:23:47 下午 org.apache.catalina.loader.WebappClassLoaderBase clearReferencesThreads
警告: The web application [ROOT] appears to have started a thread named [Abandoned connection cleanup thread] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
 java.lang.Object.wait(Native Method)
 java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
 com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:43)
2017-06-21 18:23:47,230 INFO [main] org.springframework.boot.autoconfigure.logging.AutoConfigurationReportLoggingInitializer - 
Error starting ApplicationContext. To display the auto-configuration report re-run your application with 'debug' enabled.
2017-06-21 18:23:47,237 ERROR [main] org.springframework.boot.diagnostics.LoggingFailureAnalysisReporter - 
***************************
APPLICATION FAILED TO START
***************************
Description:
Cannot determine embedded database driver class for database type NONE
Action:
If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active).

從報(bào)錯(cuò)信息中,我們就可以分析出錯(cuò)誤原因是觸發(fā)了數(shù)據(jù)源的自動(dòng)化配置,然而當(dāng)前項(xiàng)目其實(shí)并不需要數(shù)據(jù)源。查其根源是依賴方提供的API依賴中引用了一些多余的依賴觸發(fā)了該自動(dòng)化配置的加載。

如何解決

為了解決上面所述的問題,我們可以用兩種方法來解決:

  • 通過外部依賴的修改來解決:通過與依賴方溝通,在對(duì)方提供的API依賴中去掉不必要的依賴
  • 通過禁用指定的自動(dòng)化配置來避免加載不必要的自動(dòng)化配置,下面列舉了禁用的方法:

使用了@EnableAutoConfiguration的時(shí)候

@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

使用了@SpringBootApplication的時(shí)候

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})

使用了@SpringCloudApplication的時(shí)候

@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
@SpringCloudApplication

通過配置文件來設(shè)置

spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration

總結(jié)

好了,大概就這樣,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的支持

相關(guān)文章

  • java解析xml之dom解析xml示例分享

    java解析xml之dom解析xml示例分享

    DOM將整個(gè)XML文件加載到內(nèi)存中,并構(gòu)建出節(jié)點(diǎn)樹;應(yīng)用程序可以通過遍歷節(jié)點(diǎn)樹的方式來解析XML文件中的各個(gè)節(jié)點(diǎn)、屬性等信息; 這種方式便于對(duì)XML節(jié)點(diǎn)的添加修改等,而且解析也很方便,然后它比較耗費(fèi)內(nèi)存,解析速度也不快,下面看使用示例吧
    2014-01-01
  • 基于Java HashMap的死循環(huán)的啟示詳解

    基于Java HashMap的死循環(huán)的啟示詳解

    本篇文章是對(duì)Java HashMap的死循環(huán)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • java調(diào)用dll方法總結(jié)

    java調(diào)用dll方法總結(jié)

    本篇文章小編給大家整理了java調(diào)用dll的方法的總結(jié),有需要的朋友參考學(xué)下一下吧。
    2017-12-12
  • SpringBoot框架的MD5加密方式

    SpringBoot框架的MD5加密方式

    這篇文章主要介紹了SpringBoot框架的MD5加密方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • java8?Stream大數(shù)據(jù)量List分批處理切割方式

    java8?Stream大數(shù)據(jù)量List分批處理切割方式

    這篇文章主要介紹了java8?Stream大數(shù)據(jù)量List分批處理切割方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 關(guān)于java.util.Random的實(shí)現(xiàn)原理詳解

    關(guān)于java.util.Random的實(shí)現(xiàn)原理詳解

    Java實(shí)用工具類庫中的類java.util.Random提供了產(chǎn)生各種類型隨機(jī)數(shù)的方法,下面這篇文章主要給大家介紹了關(guān)于java.util.Random實(shí)現(xiàn)原理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。
    2017-08-08
  • Spring Cloud Consul的服務(wù)注冊(cè)與發(fā)現(xiàn)

    Spring Cloud Consul的服務(wù)注冊(cè)與發(fā)現(xiàn)

    這篇文章主要介紹了Spring Cloud Consul服務(wù)注冊(cè)與發(fā)現(xiàn)的實(shí)現(xiàn)方法,幫助大家更好的理解和學(xué)習(xí)使用spring框架,感興趣的朋友可以了解下
    2021-02-02
  • Java如何把map分割成多個(gè)map

    Java如何把map分割成多個(gè)map

    這篇文章主要介紹了Java如何把map分割成多個(gè)map,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2024-08-08
  • Java拆箱與裝箱實(shí)例詳解

    Java拆箱與裝箱實(shí)例詳解

    這篇文章主要介紹了Java拆箱與裝箱,結(jié)合實(shí)例形式詳細(xì)分析了Java拆箱與裝箱相關(guān)的數(shù)據(jù)類型轉(zhuǎn)換操作技巧,需要的朋友可以參考下
    2019-11-11
  • java面試常見問題---ConcurrentHashMap

    java面試常見問題---ConcurrentHashMap

    ConcurrentHashMap是由Segment數(shù)組結(jié)構(gòu)和HashEntry數(shù)組結(jié)構(gòu)組成。Segment的結(jié)構(gòu)和HashMap類似,是一種數(shù)組和鏈表結(jié)構(gòu),今天給大家普及java面試常見問題---ConcurrentHashMap知識(shí),一起看看吧
    2021-06-06

最新評(píng)論

封丘县| 汽车| 含山县| 太湖县| 得荣县| 甘南县| 道孚县| 昌江| 安溪县| 宜章县| 科技| 平阳县| 遂溪县| 贡觉县| 盐亭县| 巴中市| 沾化县| 淮安市| 景宁| 普兰县| 高州市| 陈巴尔虎旗| 沧源| 梁河县| 鸡东县| 舒兰市| 客服| 双流县| 河曲县| 镇雄县| 广灵县| 南澳县| 铁岭县| 白朗县| 裕民县| 乌拉特中旗| 永顺县| 凤庆县| 壶关县| 和林格尔县| 南川市|