频道栏目
首页 > 资讯 > 其他 > 正文

Java Config XSD

16-11-05        来源:[db:作者]  
收藏   我要投稿

在Java开发中我们经常使用到第三方框架,例如Spring,而Spring框架的配置文件如果之前没有配置过,或者它不常使用的属性我们都不知道如何配置。其它Spring配置文件中顶部都里面都是对应的xsd文件,它来规范我们来编写xml配置文件。相信通过以下的文章大家可以知道如何的通过XSD文件来准确的配置Java框架的xml文件。

1、Xml Schema的用途

xsd是XML Schema Definition 缩写.可扩展标记语言架构是以可扩展标记语言(标准通用标记语言的子集)为基础的,它用于可替代文档类型定义(外语缩写:DTD);一份XML schema文件描述了可扩展标记语言文档的结构。它的主要用途如下:

定义可出现在文档中的元素 定义可出现在文档中的属性 定义哪个元素是子元素 定义子元素的次序 定义子元素的数目 定义元素是否为空,或者是否可包含文本 定义元素和属性的数据类型 定义元素和属性的默认值以及固定值

2、Xml Schema根元素



 表示要求xml文档的每一个元素都要有命名空间指定

……定义主体部分……

3、定义一个简单元素

简易元素指那些只包含文本的元素。它不会包含任何其他的元素或属性。

这里写图片描述

4、定义一个属性

简易元素无法拥有属性。假如某个元素拥有属性,它就会被当作某种复合类型。但是属性本身总是作为简易类型被声明的。

这里写图片描述

5、定义元素或者属性值的限制

1).最大值最小值限制


    
        
             表示大于等于0,表示最小值但是不包括指定值
             表示小于等于120,
        
    

2).枚举限制,指只能在指定的几个值中取值


    
    
        
        
        
    

3)模式(pattern)限制,指字符串的格式必须满足制定的匹配模式

3.1)对值的限定

下面的例子定义了带有一个限定且名为 “age” 的元素。age 的值不能低于 0 或者高于 120:
这里写图片描述

3.2)对一组值的限定

如需把 XML 元素的内容限制为一组可接受的值,我们要使用枚举约束(enumeration constraint)。
下面的例子定义了带有一个限定的名为 “car” 的元素。可接受的值只有:Audi, Golf, BMW:

这里写图片描述

注释:在这种情况下,类型 “carType” 可被其他元素使用,因为它不是 “car” 元素的组成部分。

3.3)对一系列值的限定

如需把 XML 元素的内容限制定义为一系列可使用的数字或字母,我们要使用模式约束(pattern constraint)。
下面的例子定义了带有一个限定的名为 “letter” 的元素。可接受的值只有小写字母 a - z 其中的一个:

这里写图片描述

3.4)对一系列值的其他限定
下面的例子定义了带有一个限定的名为 “letter” 的元素。可接受的值是 a - z 中零个或多个字母:

这里写图片描述

3.5)对长度的限定

如需限制元素中值的长度,我们需要使用 length、maxLength 以及 minLength 限定。
本例定义了带有一个限定且名为 “password” 的元素。其值必须精确到 8 个字符:

这里写图片描述

6、定义复杂类型

复杂类型是指定义元素中包含属性或者子元素的类型

1)定义只包含子元素的复杂类型


  
    
      
      
    
  

2)定义只包含属性的复杂类型



  

3)定义只包含内容的复杂类型



  
    
      
    
  

4)定义包含内容和子元素混合的复杂类型


  
    
      
      
      
    
  

7、数据类型

1)字符串数据类型(String Data Type)

字符串数据类型可包含字符、换行、回车以及制表符。下面是一个关于某个 scheme 中字符串声明的例子:

文档中的元素看上去应该类似这样:

John Smith

或者类似这样:

  John Smith  

注释:如果您使用字符串数据类型,XML 处理器就不会更改其中的值。

2)日期及时间数据类型(Date and Time Data Types)

日期数据类型用于定义日期。下面是一个有关 schema 中日期声明的例子:

文档中的元素看上去应该类似这样:

2002-09-24

3)数值数据类型(Numeric Data Types)

十进制数据类型用于规定一个数值。下面是一个关于某个 scheme 中十进制数声明的例子。

文档中的元素看上去应该类似这样:

999.50

或者类似这样:

+999.5450

或者类似这样:

-999.5230

注释:您可规定的十进制数字的最大位数是 18 位。

4)杂项数据类型(Miscellaneous Data Types)

逻辑数据性用于规定 true 或 false 值。下面是一个关于某个 scheme 中逻辑声明的例子:

文档中的元素看上去应该类似这样:

999

注释:合法的布尔值是 true、false、1(表示 true) 以及 0(表示 false)。

本文只是截取参考地址的重点内容,具体信息可以参考以上XSD教程网站。

相关TAG标签
上一篇:文本处理
下一篇:springMVC整合dubbo+zookeeper
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站