关于XML-个人学习总结

本文主要介绍了XML的基础知识,包括为何学习XML,XML文件格式和语法进阶如CDATA。详细讲解了Java中利用DOM4J进行XML解析,特别是DOM4J的XPath解析,以及如何通过路径表达式查找元素。此外,还探讨了Java生成XML的技巧,并介绍了XStream库在XML序列化和反序列化上的应用。
摘要由CSDN通过智能技术生成

XML

简介
可扩展标记语言(eXtensible Markup Language)。
目前使用较少

特性:  
    1.  xml具有平台无关性, 是一门独立的标记语言.   
    2.  xml具有自我描述性
为什么学习XML?
1.  网络数据传输.    
2.  数据存储  
3.  配置文件  
XML文件
.XML文件是保存XML数据的一种方式 XML数据也可以以其他的方式存在(如在内存中构建XML数据)。
不要将XML语言狭隘的理解成XML文件。

XML语法格式

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

2. 标记 ( 元素 / 标签 / 节点)         
   
      XML文档,由一个个的标记组成.        
      
      语法:    
            开始标记(开放标记): <标记名称>   
            结束标记(闭合标记): </标记名称>
            
      标记名称:     自定义名称,必须遵循以下命名规则:      
                       1.名称可以含字母、数字以及其他的字符           
                       2.名称不能以数字或者标点符号开始     
                       3.名称不能以字符 “xml”(或者 XML、Xml)开始                
                       4.名称不能包含空格,不能包含冒号(:)               
                       5.名称区分大小写      

      标记内容:     开始标记与结束标记之间 ,是标记的内容.
      
      例如 ,通过标记, 描述一个人名:   <name>李伟杰</name>

3.  一个XML文档中, 必须有且且仅允许有一个根标记.    (即只能有一个最外层标记)

       正例:        
           <names>      
                    <name>张三</name>      
                    <name>李四</name>      
           </names> 
           
       反例:       
                    <name>李四</name>        
                    <name>麻子</name>

4. 标记可以嵌套, 但是不允许交叉. 
     
       正例:        
           <person>       
                    <name>李四</name>        
                    <age>18</age>       
           </person>      
           
       反例:   
           <person>              
                    <name>李四<age></name>      
                    18</age>    
           </person>

  5.  标记的层级称呼 (子标记, 父标记 , 兄弟标记, 后代标记 ,祖先标记)       
  
          例如:          
              <persons>       
                   <person>        
                        <name>李四</name>     
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值