org.springframework.beans.factory.xml

## 类 SimplePropertyNamespaceHandler

- java.lang.Object
- - org.springframework.beans.factory.xml.SimplePropertyNamespaceHandler

- 所有已实现的接口:
    NamespaceHandler

      public class SimplePropertyNamespaceHandler
      extends Object
      implements NamespaceHandler

  Simple `NamespaceHandler` implementation that maps custom attributes directly through to bean properties. An important point to note is that this `NamespaceHandler` does not have a corresponding schema since there is no way to know in advance all possible attribute names.

  An example of the usage of this `NamespaceHandler` is shown below:

       <bean id="rob" class="..TestBean" p:name="Rob Harrop" p:spouse-ref="sally"/>

  Here the '`p:name`' corresponds directly to the '`name`' property on class '`TestBean`'. The '`p:spouse-ref`' attributes corresponds to the '`spouse`' property and, rather than being the concrete value, it contains the name of the bean that will be injected into that property.
  从以下版本开始:
    2.0
  作者:
    Rob Harrop, Juergen Hoeller

- - ### 构造器概要

    构造器
    构造器和说明
    `SimplePropertyNamespaceHandler()`

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `BeanDefinitionHolder` | `decorate(Node node, BeanDefinitionHolder definition, ParserContext parserContext)` Parse the specified `Node` and decorate the supplied `BeanDefinitionHolder`, returning the decorated definition.
    `void` | `init()` Invoked by the `DefaultBeanDefinitionDocumentReader` after construction but before any custom elements are parsed.
    `BeanDefinition` | `parse(Element element, ParserContext parserContext)` Parse the specified `Element` and register any resulting `BeanDefinitions` with the `BeanDefinitionRegistry` that is embedded in the supplied `ParserContext`.

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 构造器详细资料

    - #### SimplePropertyNamespaceHandler

          public SimplePropertyNamespaceHandler()

  - ### 方法详细资料

    - #### init

          public void init()

      从接口复制的说明: `NamespaceHandler`
      Invoked by the `DefaultBeanDefinitionDocumentReader` after construction but before any custom elements are parsed.
      指定者:
        `init` 在接口中 `NamespaceHandler`
      另请参阅:
        `NamespaceHandlerSupport.registerBeanDefinitionParser(String, BeanDefinitionParser)`

    - #### parse

          @Nullable
          public BeanDefinition parse(Element element,
                                                 ParserContext parserContext)

      从接口复制的说明: `NamespaceHandler`
      Parse the specified `Element` and register any resulting `BeanDefinitions` with the `BeanDefinitionRegistry` that is embedded in the supplied `ParserContext`.

      Implementations should return the primary `BeanDefinition` that results from the parse phase if they wish to be used nested inside (for example) a `<property>` tag.

      Implementations may return `null` if they will not be used in a nested scenario.

      指定者:
        `parse` 在接口中 `NamespaceHandler`
      参数:
        `element` - the element that is to be parsed into one or more `BeanDefinitions`
        `parserContext` - the object encapsulating the current state of the parsing process
      返回:
        the primary `BeanDefinition` (can be `null` as explained above)

    - #### decorate

          public BeanDefinitionHolder decorate(Node node,
                                               BeanDefinitionHolder definition,
                                               ParserContext parserContext)

      从接口复制的说明: `NamespaceHandler`
      Parse the specified `Node` and decorate the supplied `BeanDefinitionHolder`, returning the decorated definition.

      The `Node` may be either an `Attr` or an `Element`, depending on whether a custom attribute or element is being parsed.

      Implementations may choose to return a completely new definition, which will replace the original definition in the resulting `BeanFactory`.

      The supplied `ParserContext` can be used to register any additional beans needed to support the main definition.

      指定者:
        `decorate` 在接口中 `NamespaceHandler`
      参数:
        `node` - the source element or attribute that is to be parsed
        `definition` - the current bean definition
        `parserContext` - the object encapsulating the current state of the parsing process
      返回:
        the decorated definition (to be registered in the BeanFactory), or simply the original bean definition if no decoration is required. A `null` value is strictly speaking invalid, but will be leniently treated like the case where the original bean definition gets returned.