基于Spring Boot 排除自動(dòng)配置的4個(gè)方法
Spring Boot 排除自動(dòng)配置
方法1
使用 @SpringBootApplication 注解,用 exclude 屬性進(jìn)行排除指定的類:
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class Application {
// ...
}
方法2
單獨(dú)使用 @EnableAutoConfiguration 注解的時(shí)候:
@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class})
public class Application {
// ...
}
方法3
使用 @SpringCloudApplication 注解的時(shí)候:
@EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class})
@SpringCloudApplication
public class Application {
// ...
}
方法4
終極方案,不管是 Spring Boot 還是 Spring Cloud 都可以搞定,在配置文件中指定參數(shù) spring.autoconfigure.exclude 進(jìn)行排除:
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
或者還可以這樣寫:
spring.autoconfigure.exclude[0]=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
yml 配置文件:
spring:
autoconfigure:
exclude:
- org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
Springboot項(xiàng)目去除自動(dòng)配置
舉例說明
新建了一個(gè)springboot工程,運(yùn)行程序時(shí)報(bào)錯(cuò):Reason: Failed to determine a suitable driver class

問題原因: 新工程中未進(jìn)行數(shù)據(jù)源信息配置。如果去掉springboot工程相關(guān)自動(dòng)配置,該問題就不會(huì)出現(xiàn)了
解決辦法:
@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class })
public class UmeApiPlusApplication {
public static void main(String[] args) {
SpringApplication.run(UmeApiPlusApplication.class, args);
}
}
總結(jié)
使用@SpringBootApplication(exclude = {})可去除springboot工程的自動(dòng)配置。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring 應(yīng)用上下文獲取 Bean 的常用姿勢(shì)實(shí)例總結(jié)
這篇文章主要介紹了Spring 應(yīng)用上下文獲取 Bean,結(jié)合實(shí)例形式總結(jié)分析了Spring 應(yīng)用上下文獲取 Bean的實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下2020-05-05
如何使用 Spring Boot 和 Canal 實(shí)現(xiàn) My
本文介紹了如何使用SpringBoot和Canal實(shí)現(xiàn)MySQL數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步,通過配置主庫(kù)、創(chuàng)建Canal用戶、配置CanalServer以及開發(fā)SpringBoot客戶端,實(shí)現(xiàn)了將主庫(kù)的數(shù)據(jù)實(shí)時(shí)同步到多個(gè)從庫(kù),感興趣的朋友跟隨小編一起看看吧2025-02-02
Spring AOP實(shí)現(xiàn)接口請(qǐng)求記錄到數(shù)據(jù)庫(kù)的示例代碼
這篇文章主要介紹了Spring AOP實(shí)現(xiàn)接口請(qǐng)求記錄到數(shù)據(jù)庫(kù),代碼包括引入AOP依賴及創(chuàng)建日志記錄表,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09
idea本地jar使用maven打包本地依賴實(shí)現(xiàn)自動(dòng)編譯到項(xiàng)目里的操作
這篇文章主要介紹了idea本地jar使用maven打包本地依賴實(shí)現(xiàn)自動(dòng)編譯到項(xiàng)目里的操作,本文通過示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-05-05
Mybatis中SqlSession下的四大對(duì)象之執(zhí)行器(executor)
mybatis中sqlsession下的四大對(duì)象是指:executor, statementHandler,parameterHandler,resultHandler對(duì)象。這篇文章主要介紹了Mybatis中SqlSession下的四大對(duì)象之執(zhí)行器(executor),需要的朋友可以參考下2019-04-04
SpringBoot中并發(fā)定時(shí)任務(wù)的實(shí)現(xiàn)、動(dòng)態(tài)定時(shí)任務(wù)的實(shí)現(xiàn)(看這一篇就夠了)推薦
這篇文章主要介紹了SpringBoot并發(fā)定時(shí)任務(wù)動(dòng)態(tài)定時(shí)任務(wù)實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04

