Java高级-XML

Posted on   仙人板板  阅读(118)  评论(0编辑  收藏  举报

XML:  可扩展标记语言!

01.很像htm1

02.着重点是数据的保存

03.无需预编译

04.符合W3C标准

 

可扩展:我们可以自定义,完全按照自己的规则来!

 

标记:计算机所能认识的信息符号!

Int num=5;教材编号

 

 

01.文档声明  <?xml version="1.0" encoding="UTF-8"?>

02.元素<p></p>

03.属性<p  id="haha"></p>

04.注释

05.特殊字符

06.CDATA区域在区域中的所有代码将不会执行,原样输出出来

 

 

 

注意点:

01.xm1文件中只能有一个根节点

02.节点要成对出现有开发和闭合

03.节点必须正确的嵌套

04.严格区分大小写

05.空格和换行都是特殊字符,会被解析器即诶

 

xm1,htm1都是一个类似于倒挂的树!

只有一个根节点,枝叶茂盛

我们把这个倒挂的树称之为=dom!

DOM:( Doucument Ob ject Mode1)文档对象模型!

 

CDATA语法:

<![CDATA[xml内容]]>

 

 

解析xm1文件的方式

01.DOM:基于xm1文档树结构的解析,xm1文件中的内容都读取到内存中,比较占内存,消耗资源多!

02.SAX:基于事件的解析。消耗资源小!

03.JDOM:针对于java的特定模型!满足28原则!自身没有解析器,依赖于SAX2!

04.DOM4J:for(4)JDOM的一个分支!源码开放,性能优异,功能强大!

 

 

在这里补充一下DTD文件限制XML文件格式的一个东西

 

语法:

  <!DOCTYPE 根元素 [元素声明]>

 

 

引用dtd文件的两种方式:

 

 

1.当引用的DTD文件是本地文件的时候,用SYSTEM标识,并写上”DTD的文件路径”,如下:

 

<!DOCTYPE 根元素 SYSTEM "DTD文件路径">

 

2.如果引用的DTD文件是一个公共的文件时,采用PUBLIC标识,如下方式:

<!DOCTYPE 根元素 PUBLIC "DTD名称" "DTD文件的URL">



修饰符的意思:

(1)():
用来给元素分组
(2) |  :在列出的对象中选择一个,或者的意思
(3) +  :
该对象必须出现一次或者多次
(4) *  :该对象允许出现0次或者多次
(5) ? :该对象必须出现0次或者1次
(6) , :对象必须按指定的顺序出现



dtd文件就一带而过了,想要了解更多DTD的详解,推荐一篇博客:  https://blog.csdn.net/gavin_john/article/details/51532756

下面有一个简单例子给大家理解一下

DTD文件:

<!ELEMENT school (grade+)>

<!ELEMENT grade (class)>
<!ELEMENT class (#PCDATA)>



XML文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE class SYSTEM "mt.dtd">


<school>
  <grade name="三年级">
    <class name="三班" address="3教室"/>
    <class name="四班" address="4教室"/>
  </grade>
</school>

 

 

编辑推荐:
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
阅读排行:
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用
点击右上角即可分享
微信分享提示