最近在做單測的時候,由於自己配置的spring boot容器會預設掃瞄很多不想被載入,網上中文的文章並不多,所以來總結一下。
預設下面描述的類都在乙個包下面。
public class test
}
@configuration
public class myconfig
@override
public object postprocessafterinitialization(object bean, string beanname) throws bean***ception };}
}
我們可以啟動應用發現輸出
初始化了 bean beanpostprocessor
載入了bean org.springframework.context.event.internaleventlistenerprocessor
載入了bean org.springframework.context.event.internaleventlistene***ctory
載入了bean org.springframework.boot.autoconfigure.autoconfigurationpackages
載入了bean org.springframework.boot.autoconfigure.context.propertyplaceholderautoconfiguration
載入了bean org.springframework.boot.autoconfigure.jmx.jmxautoconfiguration
載入了bean objectnamingstrategy
載入了bean mbeanserver
載入了bean mbeanexporter
載入了bean org.springframework.boot.autoconfigure.context.configurationpropertiesautoconfiguration
載入了bean spring.info-org.springframework.boot.autoconfigure.info.projectinfoproperties
載入了bean org.springframework.boot.autoconfigure.info.projectinfoautoconfiguration
載入了bean org.springframework.boot.autoconfigure.web.webclientautoconfiguration
說明被@configuration 修飾的類myconfig本身被掃瞄了。
@componentscan(excludefilters = )})
public class test }
用componentscan的excludefilters屬性,可以明確排除調需要掃瞄的類。
但是這裡存在乙個問題,如果要排除的模擬較多,那這裡會看起來很冗餘。我們可以採用第二種方式。註解排除。
public @inte***ce ignorescan
新建此註解。
在需要忽略的類上新增:
@configuration
@ignorescan
public class myconfig
@override
public object postprocessafterinitialization(object bean, string beanname) throws bean***ception };}
}
這樣即可排除掉不被掃瞄了。
個人覺得這樣的需求還是很適合整合在框架裡去的。
看了此篇文章是不是感覺收穫蠻大
springboot 排除內嵌的tomcat方法
因為曾經面試被這個攔住過,所以自己寫乙個總結了下,內容都是 於網路 springboot啟動會去使用內嵌的tomcat伺服器,但是我們通常開發都是自己配置,所以需要有去掉這個配置的要求 1.方法一 org.springframework.boot spring boot starter web or...
Spring Boot排除自動配置的方法
spring boot 提供的自動配置非常強大,某些情況下,自動配置的功能可能不符合我們的需求,需要我們自定義配置,這個時候就需要排除 禁用 spring boot 某些類的自動化配置了。比如 資料來源 郵件,這些都是提供了自動配置的,我們需要排除 spring boot 的自動化配置,交給我們自己...
SpringBoot學習之包掃瞄
帶著這樣乙個問題出發,為什麼需要將檔案放在啟動類所在包及子包才能被springboot自動掃瞄並註冊bean?springboot會掃瞄啟動類所在包及子包的所有檔案,並將其註冊bean到容器中,應該是啟動時自動掃瞄,具體實現需要看原始碼。package com.zrk.springboot publ...