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 相关文章推荐
SpringBoot生成License的实现示例
Jun 16 Java/Android
SpringBoot集成Redis,并自定义对象序列化操作
Jun 22 Java/Android
Java Dubbo框架知识点梳理
Jun 26 Java/Android
关于maven依赖 ${xxx.version}报错问题
Jan 18 Java/Android
解决Springboot PostMapping无法获取数据的问题
May 06 Java/Android
Java 数组的使用
May 11 Java/Android
Java 轮询锁使用时遇到问题
May 11 Java/Android
Android Studio实现简易进制转换计算器
May 20 Java/Android
Android Studio 计算器开发
May 20 Java/Android
Spring Boot项目如何优雅实现Excel导入与导出功能
Jun 10 Java/Android
SpringBoot Http远程调用的方法
Aug 14 Java/Android
Android移动应用开发指南之六种布局详解
Sep 23 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编程最快明白》第五讲:php目录、文件操作
2010/11/01 PHP
QQ登录 PHP OAuth示例代码
2011/07/20 PHP
详解PHP中的状态模式编程
2015/08/11 PHP
PHP递归遍历多维数组实现无限分类的方法
2016/05/06 PHP
Yii2使用dropdownlist实现地区三级联动功能的方法
2016/07/18 PHP
laravel validate 设置为中文的例子(验证提示为中文)
2019/09/29 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
2019/10/12 PHP
JQuery 绑定事件时传递参数的实现方法
2009/10/13 Javascript
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
2010/12/04 Javascript
js返回上一页并刷新的多种实现方法
2014/02/26 Javascript
from表单多个按钮提交用onclick跳转不同action
2014/04/24 Javascript
javaScript使用EL表达式的几种方式
2014/05/27 Javascript
JS数组合并push与concat区别分析
2015/12/17 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
node.js请求HTTPS报错:UNABLE_TO_VERIFY_LEAF_SIGNATURE\的解决方法
2016/12/18 Javascript
Javascript实现登录记住用户名和密码功能
2017/03/22 Javascript
基于react后端渲染模板引擎noox发布使用
2018/01/11 Javascript
详解JavaScript修改注册表的方法
2020/01/05 Javascript
javascript运行机制之执行顺序理解
2020/08/03 Javascript
js实现缓动动画
2020/11/25 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
[02:49]DAC2018决赛日TOP5 LGD开启黑暗之门绝杀VP
2018/04/08 DOTA
[26:52]LGD vs EG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
Python可跨平台实现获取按键的方法
2015/03/05 Python
基于python的Tkinter编写登陆注册界面
2017/06/30 Python
Python实现检测文件MD5值的方法示例
2018/04/11 Python
Python使用matplotlib绘制随机漫步图
2018/08/27 Python
python zip()函数使用方法解析
2019/10/31 Python
如何使用Python脚本实现文件拷贝
2019/11/20 Python
python实现小世界网络生成
2019/11/21 Python
基于Django OneToOneField和ForeignKey的区别详解
2020/03/30 Python
HelloFresh奥地利:立即订购烹饪盒
2019/02/22 全球购物
英国Flybe航空官网:欧洲最大的独立支线廉价航空公司
2019/07/15 全球购物
俄罗斯茶和咖啡网上商店:Tea.ru
2021/01/26 全球购物
军校制空专业毕业生自我鉴定
2013/11/16 职场文书
党的群众路线教育实践活动学习笔记
2014/11/05 职场文书