BeanPostProcessor作用
public interface BeanPostProcessor {
@Nullable
default Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
return bean;
}
@Nullable
default Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
return bean;
}
}

BeanPostProcessor主要作用就是帮助我们在bean实例化之后,初始化前后做一些事情。
例如:获得所有Bean中class上有特定注解的bean,做特殊处理。
@Slf4j
@Component
public class GatewayApiRegister implements BeanPostProcessor {
public static Map<String, List<GatewayBO>> GATEWAY_MAP = new HashMap<>();
@Override
public Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException {
return bean;
}
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
Annotation[] annotations = bean.getClass().getAnnotations();
if (annotations == null) {
return bean;
}
return bean;
}
}
收藏文章数量从多到少与“把书读薄”是一个道理

浙公网安备 33010602011771号