目录
3.3 XmlBeanDefinitionReader解读BeanDefinition
1.前言
spring提供了接口可以供我们自定义xml配置标签,如它自身的aop空间的config标签,Spring是如何解析它们的?我们如何使用Spring提供的机制自定义xmlns命令空间和标签,且能被spring解析呢?
2.Spring自定义标签
2.1 开发步骤
- 设计配置属性和JavaBean
- XSD文件
- BeanDefinitionParser标签解析类
- 标签解析类的NamespaceHandler类
- spring.handlers和spring.schemas供Spring读取
- 在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