springboot啟動類如何剔除掃描某個包
啟動類剔除掃描某個包
排除api中不引數據庫導致的報錯包
@ComponentScan(excludeFilters = { @ComponentScan.Filter(type = FilterType.REGEX,pattern = "com.integration.aop.log.service.*") })
通過該註解配置,可以實現剔除某個包,讓Spring不自動掃描該包下的內容。
適用於依賴api或者其他包時,一些不必要或不支持的對象被掃描到,引發的報錯或內存占用等問題。通過該配置可以去掉這些不必要的掃描。
使用正則表達式排除包掃描
// com.jiaobuchong.business 和 com.jiaobuchong.user.servic 下的類都不會被掃描 @ComponentScan(basePackages = {"com.jiaobuchong.order.service"}, excludeFilters = {@ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.jiaobuchong.business\\..*"), @ComponentScan.Filter(type = FilterType.REGEX, pattern = "com.jiaobuchong.user.service\\..*")})
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- springboot 啟動如何排除某些bean的註入
- Spring Boot 排除某個類加載註入IOC的操作
- SpringBoot默認包掃描機制及@ComponentScan指定掃描路徑詳解
- Springboot項目實現將類從@ComponentScan中排除
- 基於@ComponentScan註解的使用詳解