【Spring】自定义XML标签custorm:user

本文详细介绍了Spring中自定义XML标签的开发步骤和源码解析,包括设计配置属性和JavaBean,编写XSD文件,实现BeanDefinitionParser,创建NamespaceHandler,以及配置spring.handlers和spring.schemas。通过编码实践,展示了如何在Spring中使用自定义标签并生成BeanDefinition。
摘要由CSDN通过智能技术生成

目录

1.前言

2.Spring自定义标签

2.1 开发步骤

2.2 编码实践demo

3.源码解析

3.1 加载xsd文件

3.2 加载自定义NamespaceHandler

3.3 XmlBeanDefinitionReader解读BeanDefinition


1.前言

spring提供了接口可以供我们自定义xml配置标签,如它自身的aop空间config标签,Spring是如何解析它们的?我们如何使用Spring提供的机制自定义xmlns命令空间和标签,且能被spring解析呢?

2.Spring自定义标签

2.1 开发步骤

  1. 设计配置属性和JavaBean
  2. XSD文件
  3. BeanDefinitionParser标签解析类
  4. 标签解析类的NamespaceHandler类
  5. spring.handlers和spring.schemas供Spring读取
  6. 在Spring中使用

2.2 编码实践demo

1.javaBean

public class User {
    private String userName;
    private String email;
// 省略getter setter toString
}

2.xsd定义标签模式

xml schema definition文件,用于定义自定义标签的层次结构模式,放置在项目的META-INF/user.xsd,定义user标签

<?xml version="1.0" encoding="UTF-8" ?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
        targetNamespace="http://www.wy.com/schema/user"
        xmlns:tns="http://www.wy.com/schema/user"
        elementFormDefault="qualified">
    <element name="user">
        <complexType>
            <attribute name="id" type="string" />
            <attribute name="userName" type="string" />
            <attribute nam
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值