目录
百战程序员,全站22050+开发课程+文档 ,学习精选优质好课快人一步!观看视频 快捷键ALT+N

JAVA全系列 教程

3762个小节阅读:7094.5k

收藏
全部开发者教程

C语言快速入门

JAVA全系列 教程

面向对象的程序设计语言

Python全系列 教程

Python3.x版本,未来主流的版本

人工智能 教程

顺势而为,AI创新未来

大厂算法 教程

算法,程序员自我提升必经之路

C++ 教程

一门通用计算机编程语言

微服务 教程

目前业界流行的框架组合

web前端全系列 教程

通向WEB技术世界的钥匙

大数据全系列 教程

站在云端操控万千数据

AIGC全能工具班

A

A A

White Night

阅读(538)
赞(0)

十、p命名空间和c命名空间

老版本的Spring框架XML配置文件是使用DTD的,但是在目前Spring框架中多使用XSD。因为在XSD扩展支持。这也是为什么Spring框架配置文件由原来的DTD更换成XML Schema,毕竟Spring现在是模块化了,用哪个模块,XML文件支持这个模块的配置会更好。

xsd

1. DTD 和 XSD复习

Spring Framework在老版本时配置文件支持DTD,但是随着Spring框架项目拆分,配置文件也变为XSD。下面我们来复习一下DTD和XSD。

DTD 复习

DTD (Document Type Definition,文档类型定义)属于XML文档的一部分。作用是对XML文档内容进行校验。

缺点:

  • 独立语法,没有使用XML语法。例如:spring-beans.dtd文件部分截图

image-20230316104435482

  • 支持类型较少。只有(#PCDATA)类似Java中的字符串类型。
  • 扩展能力差。一个XML文件只能导入一个DTD。当需要扩展,必须更换整个DTD文件。例如MyBatis框架配置文件就是用的是DTD。

image-20230316104747706

XSD复习

XSD(XML Schemas Definition,XML结构定义)属于DTD的升级版。相对DTD来说XSD具备更多优点。

  • XSD本身就是一个XML文档,所以使用XML的语法。例如:spring-beans.xsd截图

image-20230316105434004

  • 支持类型较多。支持简单数据类型和复杂类型。

简单类型。

image-20230316105737942

复杂类型

image-20230316105622748

  • 支持扩展。只需要在xsi:schemaLocation中添加一组键值对。其中key表示XSD文件名称,value表示XSD文件路径。如果需要添加新的XSD粘贴到这里面就可以,但需要保证Key和Value不分家(中间没有其他键值对)。

image-20230316110530049

  • 支持命名空间.XSD支持对标签和标签属性的扩展。命名空间作为根标签(beans)的一个属性。

    语法为xmlns:自定名称="key"

    使用时为<标签 自定名称:xxx=""><自定义名称:标签名 >

    大部分命名空间的key需要与xsi:schemaLocation中键值对的key对应。但是部分内容没有xsd文件,因为这个命名空间没有内容限制,而是通过反射根据类的内容而决定。下面学习的p命名空间和c命名空间就是没有添加xsd键值对的实际应用。

 

北京市昌平区回龙观镇南店村综合商业楼2楼226室

©2014-2023 百战卓越(北京)科技有限公司 All Rights Reserved.

京ICP备14032124号-2