spring中BeanPostProcessor之一:InstantiationAwareBeanPostProcessor(03)
2021-02-19 06:20
标签:otherwise pop pes http 需要 pvs tin move can 前面介绍了InstantiationAwareBeanPostProcessor后置处理器的postProcessBeforeInstantiation和postProcessAfterInstantiation两个方法的用法和使用场景等。在InstantiationAwareBeanPostProcessor中还有两个方法,分别是postProcessProperties和postProcessPropertyValues,从这两个方法的名称上来看,它们完成的功能似乎很相近,下面来看具体的方法。 在InstantiationAwarePostProcessor接口中的两个方法如下, 在InstantiationAwareBeanPostProcessor接口中找到两个方法的定义如下, Implementations should return { 上面的是postProcessProperties方法,我这里贴出了方法的注释,从注释中我们可以看出该方法从5.1版本后才有。下面看postProcessPropertyValues方法, Also allows for replacing the property values to apply, typically through
* creating a new MutablePropertyValues instance based on the original PropertyValues,
* adding or removing specific values.
* The default implementation returns the given { 从上面可以看出该方法上已经被标记为@Deprecated即为废弃的,且是从5.1开始才被废弃的。也就是说从5.1开始均使用postProcessProperties方法。 既然,在5.1之后postProcessPropertyValues方法已废弃,使用的postProcessPropertiesf方法,那么他们的功能肯定是一样的,那么就只看postProcessProperties方法即可。 postProcessProperties方法要完成的工作是处理类中的属性,并为属性赋值,在spring中已经有相应的实现,CommonAnnotationBeanPostProcessor和AutowiredAnnotationBeanPostProcessor两个实现便可以完成这些工作。这里就不再列举详细的使用方式,下面会具体分析CommonAnnotationBeanPostProcessor和AutowiredAnnotationBeanPostProcessor两个实现类的具体实现,以及这两个类分别完成的功能。 如果需要使用自定义的spring框架,在进行属性注入的时候不想使用spring的方式,这里可以选择实现InstantiationAwareBeanPostProcessor接口,实现postProcessProperties方法,自己实现属性注入的方式。不过最好还是使用spring内部已经实现好的类。 spring中BeanPostProcessor之一:InstantiationAwareBeanPostProcessor(03) 标签:otherwise pop pes http 需要 pvs tin move can 原文地址:https://www.cnblogs.com/teach/p/12686580.html一、概述
二、详述
/**
* Post-process the given property values before the factory applies them
* to the given bean, without any need for property descriptors.
*
/**
* Post-process the given property values before the factory applies them
* to the given bean. Allows for checking whether all dependencies have been
* satisfied, for example based on a "Required" annotation on bean property setters.
*
三、使用场合
上一篇:JavaScript 引用类型
下一篇:定义数组类型
文章标题:spring中BeanPostProcessor之一:InstantiationAwareBeanPostProcessor(03)
文章链接:http://soscw.com/index.php/essay/57408.html