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