springboot 启动如何排除某些bean的注入


Posted in Java/Android onAugust 02, 2021

springboot 启动排除某些bean的注入

问题:

最近做项目的时候,需要引入其他的jar。然后还需要扫描这些jar里的某些bean。于是使用注解:@ComponentScan

这个注解直接指定包名就可以,它会去扫描这个包下所有的class,然后判断是否解析:

@ComponentScan(basePackages = {"your.pkg","other.pkg"})
public class Application {
} 

其他的jar中定义了 redissonConfig 这个bean。然后我自己的项目也定义了redissonConfig 这个bean。导致项目启动报错。所以使用如下方式,排除jar 中的RedissonConfig.class。

@ComponentScan(basePackages = {"com.xx.xx.*"}, excludeFilters =@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {RedissonConfig.class}))

@ComponentScan注解

扫描或解析的bean只能是Spring内部所定义的,比如@Component、@Service、@Controller或@Repository。如果有一些自定义的注解,比如@Consumer、这个注解修饰的类是不会被扫描到的。这个时候我们就得自定义扫描器完成这个操作。

配置文件中使用的:

component-scan标签底层使用ClassPathBeanDefinitionScanner这个类完成扫描工作的。@ComponentScan注解配合@Configuration注解使用,底层使用ComponentScanAnnotationParser解析器完成解析工作。

springboot排除扫描包

@SpringBootApplication
@ComponentScan(excludeFilters = 
 {
   @ComponentScan.Filter(type = FilterType.REGEX,pattern = "com.action.other.*") 
 })
public class Application {
 
    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

根据FilterType不同有不同的过滤方式,这里是根据正则过滤

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

Java/Android 相关文章推荐
解析Java中的static关键字
Jun 14 Java/Android
SpringBoot2 参数管理实践之入参出参与校验的方式
Jun 16 Java/Android
Java基于字符界面的简易收银台
Jun 26 Java/Android
分析ZooKeeper分布式锁的实现
Jun 30 Java/Android
IDEA2021.2配置docker如何将springboot项目打成镜像一键发布部署
Sep 25 Java/Android
SpringBoot中HttpSessionListener的简单使用方式
Mar 17 Java/Android
详解Spring Security中的HttpBasic登录验证模式
Mar 17 Java/Android
Android基于Fresco实现圆角和圆形图片
Apr 01 Java/Android
Java基础——Map集合
Apr 01 Java/Android
Java 通过手写分布式雪花SnowFlake生成ID方法详解
Apr 07 Java/Android
Java Spring Boot请求方式与请求映射过程分析
Jun 25 Java/Android
Java获取字符串编码格式实现思路
Sep 23 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
dubbo服务整合zipkin详解
spring boot中nativeQuery的用法
Jul 26 #Java/Android
You might like
PHP文件打开、关闭、写入的判断与执行代码
2011/05/24 PHP
支付宝支付开发――当面付条码支付和扫码支付实例
2016/11/04 PHP
浅谈htmlentities 、htmlspecialchars、addslashes的使用方法
2016/12/09 PHP
javascript下数值型比较难点说明
2010/06/07 Javascript
javascript去掉前后空格的实例
2013/11/07 Javascript
js冒泡、捕获事件及阻止冒泡方法详细总结
2014/05/08 Javascript
js中confirm实现执行操作前弹出确认框的方法
2014/11/01 Javascript
Bootstrap滚动监听(Scrollspy)插件详解
2016/04/26 Javascript
easyui datagrid 大数据加载效率慢,优化解决方法(推荐)
2016/11/09 Javascript
vue-router跳转页面的方法
2017/02/09 Javascript
jQuery用noConflict代替$的实现方法
2017/04/12 jQuery
vue v-on监听事件详解
2017/05/17 Javascript
前端把html表格生成为excel表格的实例
2017/09/19 Javascript
jq.ajax+php+mysql实现关键字模糊查询(示例讲解)
2018/01/02 Javascript
微信小程序scroll-view横向滑动嵌套for循环的示例代码
2018/09/20 Javascript
vue实现公共方法抽离
2020/07/31 Javascript
让你30分钟快速掌握vue3教程
2020/10/26 Javascript
PHP魔术方法__ISSET、__UNSET使用实例
2014/11/25 Python
Python3遍历目录树实现方法
2015/05/22 Python
使用Python导出Excel图表以及导出为图片的方法
2015/11/07 Python
python求解数组中两个字符串的最小距离
2018/09/27 Python
opencv与numpy的图像基本操作
2019/03/08 Python
Python数学形态学实例分析
2019/09/06 Python
丝芙兰新加坡官网:Sephora新加坡
2018/12/04 全球购物
手工制作的意大利礼服鞋:Ace Marks
2018/12/15 全球购物
软件测试题目
2013/02/27 面试题
电子商务专员岗位职责
2013/12/11 职场文书
行政办公室岗位职责
2014/03/18 职场文书
高级工程师英文求职信
2014/03/19 职场文书
高中生家长寄语大全
2014/04/03 职场文书
松材线虫病防治方案
2014/06/15 职场文书
港澳通行证委托书怎么写
2014/08/02 职场文书
老人再婚离婚协议书范本
2014/10/27 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
图解排序算法之希尔排序Java实现
2021/06/26 Java/Android
详细聊聊MySQL中慢SQL优化的方向
2021/08/30 MySQL