XML入门一

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时计算 Flink 版,5000CU*H 3个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: XML入门一

Xml基础01

概念:

可扩展的标记语言,是以简单文本格式存储数据的方式。可用于序列化反序列化(序列化是通过将对象转换为字节流,从而存储对象或将对象传输到内存,数据库或文件的过程。主要用途是保存对象的状态,包括对象的数据,以便能够在需要是重建对象。反向过程称为 反序列化。)

xml的元素 - element:

由一对尖括号和尖括号斜杠共同组成一个最基本的元素。例如 <> </>,在内部是xml的标签标记。尖括号的中间是内容。

如 : \西游记\

​ \

​ \吴承恩\

标签之间可以有包含的关系,互相嵌套的关系(不过不建议使用,代码过于复杂不便于阅读)

xml的元素和属性

属性: \

​ \

元素和属性的区别:

同是存储数据的方式

区别不大

元素不能进行复杂对象的描述

xml的声明

声明文件格式,版本,编解码。

<?xml version="1.0"?>
<?xml version="1.0" encoding="utf-8" ?>
<?xml version="1.0" encoding="GBK" ?>

xml的注释

注释符号

<!--           -->

xml的结构

Xml提供了一种结构化的组织数据的方式,不同于关系数据库。

Xml数据是分层组织的,有点类似windows explorer中的文件夹和文件。

每一个文档必须有一个根元素,其中包含所有的元素和文本数据。(即必须要有一个根的标签元素,其他的标签元素都被它包含)

<?xml version="1.0"?>
<books>
    <book></book>
</books>
<!--这是合法的->

xml的命名空间

即为xml命名一个名字。

例如下表:

<?xml version="1.0"?>
<books xmlns:myNS="123123">
    <book></book>
</books>

xml的规则

1.必须有声明语句

​ \<? xml version="1.0" ?>

2.有且只有1个根元素

3.每一个元素都有闭标记

4.没有有重叠元素—所有的子元素必须完全嵌套在父元素内

5.所有的属性必须放在引号内

DTD文档定义类型

不允许规定元素和属性的数据类型(对xml文件的规定约束)

schema

常用的XSD XML Schema Deinition language

在.net中也称为XML架构,可以规定元素和属性的数据结构,以.xsd文件方式存储

命名空间:

http://www.w3.org/2001/XMLSchema 根元素: \\

<?xml version="1.0"encoding="utf-8"?>
<xs:schema id="SchemaBooks"
    targetNamespace="http://tempuri.org/SchemaBooks.xsd"
    elementFormDefault="qualified"
    xmins="http://tempuri.org/SchemaBooks.xsd"
    xmlns:mstns="http://tempuri.org/SchemaBooks.xsd"
    xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="Books">
        <xs:complexType>
            <xs:choice maxOccurs="unbounded">
                <xs:element name="Book">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="title"type="xs:string"/>
                            <xs;element name="price"type="xs:decimal"/>
                        </xs;sequence>
                    </xs:complexType>
                </xs:element>
            </xs;choice>
        </xs:complexType>
    </xs:element>
</xs:schema>
<!--schema    文档根路径(元素)
element    结点
choice    复杂结点
maxOccurs    节点数量限制
unbounded    是否有限制
complexType    指定该标签下的元素类型->
xml与xsd关联

在vs中,可以通过

System.Data.DataSet ds = new System.Data.DataSet();
ds.ReadXml("");
ds.WriteXmlSchema("");
//可以将xml文件读取并转换为xsd文件
xsd的几个常见默认值:

xmlns:xs=http://www.w3.org/2001/XMLSchema

schema规范中定义了一些基本的数据类型的命名空间

targetNamespace=http://tempuri.org/SchemaBookStore.xsd

该 schema 的命名空间的 URI 引用。

xmlns=http://tempuri.org/SchemaBookStore.xsd

本XSD命名空间

xmlns:mstns=http://tempuri.org/SchemaBookStore.xsd

本XSD命名空间,前缀名称为mstns

文档对象模型

Document Object Model, DOM

基于对象(基于树)(适合于对象的提取等)

SAX

Simple API for XML

基于流、推模型(性能更好,在读取解析数据时更适合)

DOM 文档对象模型主要类

XmlNode:表示 XML 文档中的单个节点。

XmlDocument:表示 XML 文档,继承自XmlNode 。

XmlElement:表示一个元素。

XmlAttribute表示一个属性

XmlText:表示元素文本内容。

XmlComment表示 XML 注释的内容。

XmlNodeList表示节点集合。

XmlNode.ChildNodes - 返回包含节点所有子级的 XmlNodeList

XmlNode.SelectNodes - 返回包含匹配 XPath 查询的节点集合的 XmlNodeList

XmlDocument的使用

定义**XmlDocument**

XmlDocument document = new XmlDocument();

加载**XMl**文件

document.Load(“XML文件”);

命名空间

using System.Xml;

常用属性:

FirstChild获取节点的第一个子级。 (继承自 XmlNode。)

DocumentElement 获取文档的根 XmlElement。

常用方法

Load()

Save()

获取根节点

document.FirstChild

获取根元素

document.DocumentElement

关于XmlNode的几个重要属性

FirstChild

LastChild

HasChildNodes

ParentNode

NextSibling

使用DOM创建xml文件

创建节点:

XmlDocument**方法**

CreateNode 节点

CreateElement 元素

CreateAttribute 属性

CreateTextNode 内容

CreateComment 注释

插入节点:

XmlNode**方法**

AppendChild 最后添加

InsertAfter 前添加

InsertBefore 后添加

删除节点:

XmlNode方法

RemoveAll 删除全

RemoveChild 删除某一个

RemoveAttribute 删除某一个属性

目录
相关文章
|
XML Java 数据格式
一.Xml建模之入门
一.Xml建模之入门
62 1
|
3月前
|
XML Java 数据格式
Spring5入门到实战------7、IOC容器-Bean管理XML方式(外部属性文件)
这篇文章是Spring5框架的实战教程,主要介绍了如何在Spring的IOC容器中通过XML配置方式使用外部属性文件来管理Bean,特别是数据库连接池的配置。文章详细讲解了创建属性文件、引入属性文件到Spring配置、以及如何使用属性占位符来引用属性文件中的值。
Spring5入门到实战------7、IOC容器-Bean管理XML方式(外部属性文件)
|
11天前
|
XML 前端开发 Java
XML基本概念入门学习指南
XML(eXtensible Markup Language)是一种可扩展的标记语言,和HTML语言语法类似,同属于标记语言。
|
5月前
|
XML Java 数据库连接
MyBatis入门——MyBatis XML配置文件(3)
MyBatis入门——MyBatis XML配置文件(3)
66 6
|
3月前
|
XML Java 数据格式
Spring5入门到实战------11、使用XML方式实现AOP切面编程。具体代码+讲解
这篇文章是Spring5框架的AOP切面编程教程,通过XML配置方式,详细讲解了如何创建被增强类和增强类,如何在Spring配置文件中定义切入点和切面,以及如何将增强逻辑应用到具体方法上。文章通过具体的代码示例和测试结果,展示了使用XML配置实现AOP的过程,并强调了虽然注解开发更为便捷,但掌握XML配置也是非常重要的。
Spring5入门到实战------11、使用XML方式实现AOP切面编程。具体代码+讲解
|
3月前
|
XML Java 数据格式
Spring5入门到实战------6、IOC容器-Bean管理XML方式(自动装配)
这篇文章是Spring5框架的入门教程,详细讲解了IOC容器中Bean的自动装配机制,包括手动装配、`byName`和`byType`两种自动装配方式,并通过XML配置文件和Java代码示例展示了如何在Spring中实现自动装配。
Spring5入门到实战------6、IOC容器-Bean管理XML方式(自动装配)
|
3月前
|
XML Java 数据库
Spring5入门到实战------15、事务操作---概念--场景---声明式事务管理---事务参数--注解方式---xml方式
这篇文章是Spring5框架的实战教程,详细介绍了事务的概念、ACID特性、事务操作的场景,并通过实际的银行转账示例,演示了Spring框架中声明式事务管理的实现,包括使用注解和XML配置两种方式,以及如何配置事务参数来控制事务的行为。
Spring5入门到实战------15、事务操作---概念--场景---声明式事务管理---事务参数--注解方式---xml方式
|
6月前
|
XML 安全 Java
从零手写实现 apache Tomcat-02-web.xml 入门详细介绍
`web.xml`是Java Web应用的核心配置文件,描述应用工作方式。它包含Servlet、Filter和Listener的定义。例如,示例展示了如何配置名为`my`的Servlet处理`/my`请求,`LoggingFilter`拦截所有请求,以及`MyServletContextAttrListener`监听应用事件。`web.xml`是服务器理解应用结构与行为的指南。迷你版Tomcat实现——mini-cat(开源:https://github.com/houbb/minicat)。
|
6月前
|
XML Java 数据库连接
Spring Data JPA入门简解与XML配置实现
Spring Data JPA入门简解与XML配置实现
258 0
|
XML 数据管理 数据处理
XML入门,之dtd属性与元素详解
XML入门,之dtd属性与元素详解
55 1