XML学习

1 XML介绍

XML是可扩展的标记性语言,常用来传输和存储数据。可见于Web中的web.xml和Maven中的pom.xml
在这里插入图片描述
在这里插入图片描述
version是版本,encoding是编码

<?xml version="1.0" encoding="UTF-8"?> 

2 XML语法

  • 标签可以包含字母、数字以及其他字符
  • 标签不能以数字或者标点符号开头
  • 标签不能包含空格
  • 标签对大小写敏感
  • XML属性值必须加引号,即使是数字
  • XML必须且只能包含一个根元素,它是所有其他元素的父元素

以下实例中root是根元素

<?xml version="1.0" encoding="UTF-8"?>
<root>
 	<child>
    	<subchild>.....</subchild>
 	</child>
</root>

3 XML特殊字符

字符XML表示
&&amp;
<&lt;
>&gt;
"&quot;
&apos;

注:可以用特殊标签<![CDATA[ 内容]],内容会被当作文本,不会被XML解析

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <name>&lt;XML学习&gt;</name>
    <name><![CDATA[<XML学习>]]></name>
</root>

在这里插入图片描述

4 XML文档结构

XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶"。

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
    <book category="COOKING">
        <title lang="en">Everyday Italian</title>
        <author>Giada De Laurentiis</author>
        <year>2005</year>
        <price>30.00</price>
    </book>
    <book category="CHILDREN">
        <title lang="en">Harry Potter</title>
        <author>J K. Rowling</author>
        <year>2005</year>
        <price>29.99</price>
    </book>
    <book category="WEB">
        <title lang="en">Learning XML</title>
        <author>Erik T. Ray</author>
        <year>2003</year>
        <price>39.95</price>
    </book>
</bookstore>

在这里插入图片描述

5 XML命名空间

当两个不同的文档使用相同的元素名时,就会发生命名冲突,可以通过命名空间避免这种冲突。当命名空间被定义在元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。
命名空间声明的语法为:xmlns:前缀=“URI”(URI同前缀一起标识一个命令空间,可能前缀会相同,但是URI一般不同)

如下代码中book标签的title和author标签的title重复,程序可能不能区分这两个title

<book>
	<title>西游记</title>
	<author>
		<name>吴承恩</name>
		<title>先生</title>
	</author>
</book>

可以通过命令空间加以区分

<b:book xmlns:b="http://www.atguigu.com/xml/b"
	xmlns:a="http://www.atguigu.com/xml/a">
	<b:title>西游记</b:title>
	<a:author>
	<a:name>吴承恩</a:name>
	<a:title>先生</a:title>
	</a:author>
</b:book>

此外,命令空间可以不加前缀,表示默认的命名空间,一个XML文档只能有一个默认的命名空间

<book xmlns="http://www.atguigu.com/xml/b"
	xmlns:a="http://www.atguigu.com/xml/a">
	<title>西游记</title>
	<a:author>
		<a:name>吴承恩</a:name>
		<a:title>先生</a:title>
	</a:author>
</book>

xmlns:xsi 与 xsi:schemaLocation

<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
       http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--配置User对象创建-->
    <bean id="user" class="springstudy.User"></bean>
</beans>

xsi是一个业界默认的用于获得xsd文件的命名空间,而xsd用于定义xml文档结构,xsi:schemaLocation = “键” “值”,“键”指代一个命名空间,“值”为该命名空间下的xsd文件的地址,必须存在
如图中键为http://www.springframework.org/schema/beans中可以找到值为http://www.springframework.org/schema/beans/spring-beans.xsd的文件
在这里插入图片描述

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值