java怎么重写拦截修改jar_SpringBoot重写jar包中的某个方法

开发过程中,我们会引入很多工具类,在pom.xml引入,idea中external libraries可以看到引入jar的源码。但是我们要重写jar中的某个方法怎么办呢?下面将介绍其中一种方法:

@ComponentScan过滤不需要注入的类

@ComponentScan 注解默认会扫描该类所在的包下所有的配置类,其中ComponentScan下有两个注解includeFilters和excludeFilters

includeFilters:指定扫描时需要实例化的类型

excludeFilters:指定扫描时需要过滤的类

因此我们可以启动类上利用excludeFilters过滤需要重写的类,然后在source里面新建包,就可以重写了

@ComponentScan(basePackages = {"com.lzy.oa"},

excludeFilters = {@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {OperationLogAuditEventRepository.class})})

basePackages为指明需要扫描的包,excludeFilters指明过滤的类,type是指按哪种类型来过滤,classes则为具体的类。

说到FilterType,有如下五种类型

public enum FilterType {

ANNOTATION,//按照注解方式

ASSIGNABLE_TYPE,//按照指定类型的方式

ASPECTJ,//使用ASPECTJ表达式的方式

REGEX,//利用正则表达式进行指定

CUSTOM//自己实现TypeFilter接口进行自定义规则

}

然后将OperationLogAuditEventRepository类从jar复制出来,就可以在里面进行修改了。

标签:包中,SpringBoot,FilterType,jar,ComponentScan,过滤,excludeFilters,重写

来源: https://blog.csdn.net/qq_41937388/article/details/110379491

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值