クラス DefaultBeanDefinitionDocumentReader
java.lang.ObjectSE
org.springframework.beans.factory.xml.DefaultBeanDefinitionDocumentReader
- 実装されたすべてのインターフェース:
BeanDefinitionDocumentReader
public class DefaultBeanDefinitionDocumentReader
extends ObjectSE
implements BeanDefinitionDocumentReader
"spring-beans" DTD および XSD 形式(Spring のデフォルトの XML Bean 定義形式)に従って Bean 定義を読み取る
BeanDefinitionDocumentReader
インターフェースのデフォルトの実装。 必要な XML ドキュメントの構造、要素、属性名は、このクラスにハードコードされています。(もちろん、このフォーマットを生成するために必要な場合は、変換を実行できます)。<beans>
は XML ドキュメントのルート要素である必要はありません。このクラスは、実際のルート要素に関係なく、XML ファイル内のすべての Bean 定義要素を解析します。
- 導入:
- 18.12.2003
- 作成者:
- Rod Johnson, Juergen Hoeller, Rob Harrop, Erik Wiersma
フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected BeanDefinitionParserDelegate
createDelegate
(XmlReaderContext readerContext, ElementSE root, BeanDefinitionParserDelegate parentDelegate) protected void
指定されたルート<beans/>
要素内に各 Bean 定義を登録します。protected ObjectSE
extractSource
(ElementSE ele) SourceExtractor
を呼び出して、提供されたElement
SE からソースメタデータをプルします。protected final XmlReaderContext
このパーサーが機能する XML リソースの記述子を返します。protected void
"import" 要素を解析し、指定されたリソースから Bean ファクトリに Bean 定義をロードします。protected void
parseBeanDefinitions
(ElementSE root, BeanDefinitionParserDelegate delegate) ドキュメントのルートレベルで要素を解析します: 「インポート」、「エイリアス」、"Bean"。protected void
postProcessXml
(ElementSE root) Bean 定義の処理が完了した後、カスタム要素型を最後に処理することにより、XML を拡張可能にします。protected void
preProcessXml
(ElementSE root) Bean 定義の処理を開始する前に、まずカスタム要素型を処理して、XML を拡張できるようにします。protected void
指定されたエイリアス要素を処理し、エイリアスをレジストリに登録します。protected void
processBeanDefinition
(ElementSE ele, BeanDefinitionParserDelegate delegate) 指定された Bean エレメントを処理し、Bean 定義を解析して、レジストリに登録します。void
registerBeanDefinitions
(DocumentSE doc, XmlReaderContext readerContext) この実装は、"spring-beans" XSD(または歴史的には DTD)に従って Bean 定義を解析します。
フィールドの詳細
コンストラクターの詳細
DefaultBeanDefinitionDocumentReader
public DefaultBeanDefinitionDocumentReader()
メソッドの詳細
registerBeanDefinitions
この実装は、"spring-beans" XSD(または歴史的には DTD)に従って Bean 定義を解析します。DOM ドキュメントを開きます。次に、
<beans/>
レベルで指定されたデフォルト設定を初期化します。次に、含まれている Bean 定義を解析します。- 次で指定:
- インターフェース
BeanDefinitionDocumentReader
のregisterBeanDefinitions
- パラメーター:
doc
- DOM ドキュメントreaderContext
- リーダーの現在の状況 (ターゲットレジストリと解析中のリソースを含みます)
getReaderContext
このパーサーが機能する XML リソースの記述子を返します。extractSource
SourceExtractor
を呼び出して、提供されたElement
SE からソースメタデータをプルします。doRegisterBeanDefinitions
指定されたルート<beans/>
要素内に各 Bean 定義を登録します。createDelegate
protected BeanDefinitionParserDelegate createDelegate(XmlReaderContext readerContext, ElementSE root, @Nullable BeanDefinitionParserDelegate parentDelegate) parseBeanDefinitions
ドキュメントのルートレベルで要素を解析します: 「インポート」、「エイリアス」、"Bean"。- パラメーター:
root
- ドキュメントの DOM ルート要素
importBeanDefinitionResource
"import" 要素を解析し、指定されたリソースから Bean ファクトリに Bean 定義をロードします。processAliasRegistration
指定されたエイリアス要素を処理し、エイリアスをレジストリに登録します。processBeanDefinition
指定された Bean エレメントを処理し、Bean 定義を解析して、レジストリに登録します。preProcessXml
Bean 定義の処理を開始する前に、カスタム要素型を最初に処理することにより、XML を拡張可能にします。このメソッドは、XML の他のカスタム前処理の自然な拡張ポイントです。デフォルトの実装は空です。サブクラスは、このメソッドをオーバーライドして、カスタム要素を標準の Spring Bean 定義に変換できます。実装者は、対応するアクセサーを介して、パーサーの Bean 定義リーダーと基盤となる XML リソースにアクセスできます。
- 関連事項:
postProcessXml
Bean 定義の処理が終了した後、カスタム要素型を最後に処理することにより、XML を拡張可能にします。このメソッドは、XML の他のカスタム後処理の自然な拡張ポイントです。デフォルトの実装は空です。サブクラスは、このメソッドをオーバーライドして、カスタム要素を標準の Spring Bean 定義に変換できます。実装者は、対応するアクセサーを介して、パーサーの Bean 定義リーダーと基盤となる XML リソースにアクセスできます。
- 関連事項: