Spring Boot 排除某个类加载注入IOC的操作


Posted in Java/Android onAugust 02, 2021

Spring Boot 排除某个类加载注入IOC

我们项目往往会引入其他项目的依赖,造成功能冲突的类,我们想把这些类排除掉,不注入到我们项目IoC容器中,

只加载自己的类

@ComponentScan(basePackages = "com.xxx",excludeFilters = {
        @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE,classes = {
                xxxPublisher.class,
                xxxAdvice.class,
               xxxService.class})})

其中这三个类,我不需要加载到我们项目中,需要指明type=FilterType.ASSIGNABLE_TYPE

不指定type类型执行classes={xxx...} 排除不了

它有五种类型:

public enum FilterType {
    ANNOTATION, 
    ASSIGNABLE_TYPE,
    ASPECTJ,
    REGEX,
    CUSTOM;
}

spring boot 排除个别配置类的代码

废话不说,直接上代码

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class})
@EnableScheduling
@ComponentScan(basePackages = {"com.hudai.platform.sms.vendor","com.hudai.platform.scp"}, excludeFilters =
@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = com.hudai.platform.scp.alert.config.RestTemplateConfig.class))
public class SmsVendorApplication {

    public static void main(String[] args) {
        SpringApplication.run(SmsVendorApplication.class, args);
    }
}
excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = com.hudai.platform.scp.alert.config.RestTemplateConfig.class))

这段是经典~

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
Jun 26 Java/Android
elasticSearch-api的具体操作步骤讲解
Jun 28 Java/Android
Java基础之线程锁相关知识总结
Jun 30 Java/Android
解决Jenkins集成SonarQube遇到的报错问题
Jul 15 Java/Android
mybatis中注解与xml配置的对应关系和对比分析
Aug 04 Java/Android
MybatisPlus EntityWrapper如何自定义SQL
Mar 22 Java/Android
Java设计模式之代理模式
Apr 22 Java/Android
Android开发 使用文件储存的方式保存QQ密码
Apr 24 Java/Android
spring IOC容器的Bean管理XML自动装配过程
May 30 Java/Android
Java中生成微信小程序太阳码的实现方案
Jun 01 Java/Android
详解Flutter自定义应用程序内键盘的实现方法
Jun 14 Java/Android
Java完整实现记事本代码
Jun 16 Java/Android
SpringBoot+VUE实现数据表格的实战
springboot 启动如何排除某些bean的注入
Aug 02 #Java/Android
idea 在springboot中使用lombok插件的方法
Spring Boot mybatis-config 和 log4j 输出sql 日志的方式
Jul 26 #Java/Android
Sleuth+logback 设置traceid 及自定义信息方式
Jul 26 #Java/Android
Java日常练习题,每天进步一点点(38)
Jul 26 #Java/Android
dubbo集成zipkin获取Traceid的实现
Jul 26 #Java/Android
You might like
PHP读MYSQL中文乱码的解决方法
2006/12/17 PHP
php 实现进制转换(二进制、八进制、十六进制)互相转换实现代码
2010/10/22 PHP
PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法
2012/10/31 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
2014/08/18 PHP
php实现图片转换成ASCII码的方法
2015/04/03 PHP
PHP网站建设的流程与步骤分享
2015/09/25 PHP
Yii中CGridView实现批量删除的方法
2015/12/28 PHP
Yii隐藏URL中index.php的方法
2016/07/12 PHP
php array_multisort 对数组进行排序详解及实例代码
2016/10/27 PHP
比较详细的javascript对象的property和prototype是什么一种关系
2007/08/06 Javascript
iframe的父子窗口之间的对象相互调用基本用法
2013/09/03 Javascript
jquery默认校验规则整理
2014/03/24 Javascript
自写的jQuery异步加载数据添加事件
2014/05/15 Javascript
js的[defer]和[async]属性
2014/11/24 Javascript
Flash图片上传组件 swfupload使用指南
2015/03/14 Javascript
在JS中操作时间之getUTCMilliseconds()方法的使用
2015/06/10 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
Nodejs进阶:核心模块net入门学习与实例讲解
2016/11/21 NodeJs
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
jQuery插件JWPlayer视频播放器用法实例分析
2017/01/11 Javascript
详解Vue SPA项目优化小记
2018/07/03 Javascript
通过webpack引入第三方库的方法
2018/07/20 Javascript
快速解决angularJS中用post方法时后台拿不到值的问题
2018/08/14 Javascript
vue.js 实现点击按钮动态添加li的方法
2018/09/07 Javascript
微信小程序自定义导航栏(模板化)
2019/11/15 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
node.js中fs文件系统模块的使用方法实例详解
2020/02/13 Javascript
JS+CSS实现动态时钟
2021/02/19 Javascript
基于JavaScript实现随机点名器
2021/02/25 Javascript
python MySQLdb使用教程详解
2018/03/20 Python
Python实现根据日期获取当天凌晨时间戳的方法示例
2019/04/09 Python
Android Q之气泡弹窗的实现示例
2020/06/23 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
教师工作决心书
2015/02/04 职场文书
护士个人年度总结范文
2015/02/13 职场文书
欠款证明
2015/06/24 职场文书