Spring常用的拓展接口
-
Spring框架是一个拓展性很好的框架,在平时的开发中我们也会进行一些拓展。那么来看一下常用的拓展类:
这里把拓展接口分成了四大类
1. 导入类拓展接口
-
ImportAware
从Spring的源码注释来看
ImportAware
接口是需要和@Import
一起使用的。通过@Import
导入的配置类如果实现了ImportAware
接口就可以获取到导入该配置类接口的数据配置。同时需要搭配@Configuration注解
例如Spring实现的注解**
@ EnableAsync
** 中的ProxyAsyncConfiguration
就实现了。 -
ImportSelector,DeferredImportSelector
动态导入配置类,例如Spring的实现:
@ EnableAsync
-
ImportBeanDefinitionRegistrar
可以实现自己的注解管理自己的Bean。例如Spring注解:
@EnableAspectJAutoProxy
Tips: 以上的接口都是搭配 @Import、@Configuration使用的。 例如用来实现自定义的Enablexxx功能
2. AOP相关接口
对于AOP记住三点就好,Advisor、Advice、Pointcut。所以Spring提供了三个对应的接口来给使用者拓展实现。
-
StaticMethodMatcherPointcut
切点实现
-
AbstractBeanFactoryPointcutAdvisor
通知器实现
-
MethodInterceptor
切面实现
3. Bean后置处理器接口
-