クラス AbstractSingleBeanDefinitionParser

java.lang.ObjectSE
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
org.springframework.beans.factory.xml.AbstractSingleBeanDefinitionParser
実装されているすべてのインターフェース:
BeanDefinitionParser
既知の直属サブクラス
AbstractSimpleBeanDefinitionParser, ExecutorBeanDefinitionParser, FreeMarkerConfigurerBeanDefinitionParser, JtaTransactionManagerBeanDefinitionParser, ScheduledTasksBeanDefinitionParser, SchedulerBeanDefinitionParser

public abstract class AbstractSingleBeanDefinitionParser extends AbstractBeanDefinitionParser
単一の  BeanDefinition のみを解析および定義する必要がある BeanDefinitionParser 実装の基本クラス。

任意の複雑な XML 要素から単一の Bean 定義を作成する場合は、このパーサークラスを継承します。比較的単純なカスタム XML 要素から単一の Bean 定義を作成する場合は、AbstractSimpleBeanDefinitionParser を継承することを検討してください。

結果の BeanDefinition は自動的に BeanDefinitionRegistry に登録されます。あなたのジョブは単に、カスタム XML ElementSE を単一の BeanDefinitionparse することです。

導入:
2.0
作成者:
Rob Harrop, Juergen Hoeller, Rick Evans
関連事項:
  • コンストラクターの詳細

    • AbstractSingleBeanDefinitionParser

      public AbstractSingleBeanDefinitionParser()
  • メソッドの詳細

    • parseInternal

      protected final AbstractBeanDefinition parseInternal(ElementSE element, ParserContext parserContext)
      bean ClassBeanDefinitionBuilder インスタンスを作成し、それを doParse(Element, ParserContext, BeanDefinitionBuilder) ストラテジメソッドに渡します。
      次で指定:
      クラス AbstractBeanDefinitionParserparseInternal 
      パラメーター:
      element - 単一の BeanDefinition に解析される要素
      parserContext - 解析プロセスの現在の状態をカプセル化するオブジェクト
      戻り値:
      提供された ElementSE の解析から得られた BeanDefinition
      例外:
      IllegalStateExceptionSE - getBeanClass(org.w3c.dom.Element) から返された Bean ClassSE が null の場合
      関連事項:
    • getParentName

      protected @Nullable StringSE getParentName(ElementSE element)
      現在の Bean が子 Bean として定義されている場合は、現在解析されている Bean の親の名前を判別します。

      デフォルトの実装は、ルート Bean 定義を示す null を返します。

      パラメーター:
      element - 解析されている Element 
      戻り値:
      現在解析されている Bean の親 Bean の名前。存在しない場合は null 
    • getBeanClass

      protected @Nullable ClassSE<?> getBeanClass(ElementSE element)
      提供された ElementSE に対応する Bean クラスを決定します。

      アプリケーションクラスの場合、Bean 実装クラスへの直接の依存を回避するために、通常は代わりに getBeanClassName(Element) をオーバーライドすることが望ましいことに注意してください。アプリケーションクラスがプラグインのクラスパスで利用できない場合でも、BeanDefinitionParser とその NamespaceHandler は IDE プラグイン内で使用できます。

      パラメーター:
      element - 解析されている Element 
      戻り値:
      指定された Element を解析することにより定義されている Bean の ClassSE、または存在しない場合は null 
      関連事項:
    • getBeanClassName

      protected @Nullable StringSE getBeanClassName(ElementSE element)
      提供された ElementSE に対応する Bean クラス名を決定します。
      パラメーター:
      element - 解析されている Element 
      戻り値:
      提供された Element を解析することにより定義されている Bean のクラス名。ない場合は null 
      関連事項:
    • doParse

      protected void doParse(ElementSE element, ParserContext parserContext, BeanDefinitionBuilder builder)
      提供された ElementSE を解析し、必要に応じて提供された BeanDefinitionBuilder を入力します。

      デフォルトの実装は、ParserContext 引数なしの doParse バージョンに委譲します。

      パラメーター:
      element - 解析される XML 要素
      parserContext - 解析プロセスの現在の状態をカプセル化するオブジェクト
      builder - BeanDefinition の定義に使用
      関連事項:
    • doParse

      protected void doParse(ElementSE element, BeanDefinitionBuilder builder)
      提供された ElementSE を解析し、必要に応じて提供された BeanDefinitionBuilder を入力します。

      デフォルトの実装では何も行われません。

      パラメーター:
      element - 解析される XML 要素
      builder - BeanDefinition の定義に使用