真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

什么是XML

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)碛嘘P(guān)什么是XML,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比湛河網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式湛河網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋湛河地區(qū)。費(fèi)用合理售后完善,十年實(shí)體公司更值得信賴。

  1、XML : extensible markup language 可擴(kuò)展標(biāo)記語言 version="1.0"

  • 可擴(kuò)展:所有的標(biāo)簽都是自定義的

  • 功能:數(shù)據(jù)存儲(chǔ)

    • 配置文件

    • 數(shù)據(jù)傳輸

  • html 與 xml 區(qū)別

    • HTML語法松散,xml語法嚴(yán)格

    • html做頁面展示,xml做數(shù)據(jù)存儲(chǔ)

    • Html所有標(biāo)簽都是預(yù)定義的,xml所有標(biāo)簽都是自定義的

2、xml語法:

  • 文檔聲明

    • version 版本號 固定值1.0

    • encoding 指定文檔的碼表 默認(rèn)值為iso-8859-1

    • standalone 指定文檔是否獨(dú)立 yes 或 no

    • 必須寫在xml文檔的第一行

    • 寫法:

    • 屬性

  • 元素 xml文檔中的標(biāo)簽

    • 元素名稱區(qū)分大小寫

    • 數(shù)字不能開頭

    • 文檔中必須有且只能有一個(gè)根元素

    • 元素需要正確閉合

    • 元素需要正確嵌套

    • 元素名稱要遵守

  • 文本

    • 轉(zhuǎn)義字符 >;

    • CDATA 里邊的數(shù)據(jù)會(huì)原樣顯示

  • 屬性

    • 屬性值必須用引號引起來,單雙引號都行

  • 注釋

  • 處理指令:現(xiàn)在基本不用

3、XML約束

  • 約束就是xml的書寫規(guī)則

  • 約束的分類:

    • 導(dǎo)入xsd約束文檔

    • 編寫根標(biāo)簽

    • 引入實(shí)例名稱空間 xmlns:xsi="www.w3.org/2001/XMLSchema-instance"

    • 引入名稱空間 xsi:schemaLocation="www.itcast.cn/xml student.xsd"

    • 引入默認(rèn)的名稱空間

    • student.xsd

    • student.xml

    • 
      
          
          
              
                  
              
          
          
              
                  
                  
                  
              
              
          
          
              
                  
                  
              
          
          
              
                  
                  
              
          
          
              
                  
              
          
      
      
    • 
          
              asfd
              12
              male
          
      
      
          
              asfd
              12
              male
          
      
    • 內(nèi)部dtd 在xml內(nèi)部定義dtd

    • 外部dtd 在外部文件中定義dtd

    • Student.dtd

    • student.xml

    • 本地dtd文件

    • 網(wǎng)絡(luò)dtd文件

    • 
      
      
      
      
       唯一的,必須的
      
      
      
          
              zs
              abc
              yao
          
      
    • dtd  約束不嚴(yán)謹(jǐn)

    • schema

4、XML解析

  • 解析XML可以做:

    • 如果xml作為配置文件:讀取

    • 如果xml作為傳輸文件:寫、讀

  • XML解析思想:

    • 優(yōu)點(diǎn):不占內(nèi)存,速度快

    • 缺點(diǎn):只能讀取,不能回寫

    • 優(yōu)點(diǎn):因?yàn)樵趦?nèi)存中會(huì)形成dom樹,可以對dom樹進(jìn)行增刪改查

    • 缺點(diǎn):dom樹非常占內(nèi)存,解析速度慢

    • Document Element Text Attribute Comment

    • DOM:將文檔加載到內(nèi)存,形成一棵dom樹(document對象),將文檔的各個(gè)組成部分封裝為一些對象

    • SAX:逐行讀取,基于事件驅(qū)動(dòng)

  • xml常用的解析器

    • 定義了一種規(guī)則

    • 使用方法

    • 使用步驟

    • XPath:

    • public classTestXPath3 {
            @Test
            publicvoidtest()throwsException{
                  SAXReaderread= new SAXReader();
                  Documentdocument= read.read("src/Dom4jTest.xml");
                  Listnodes= document.selectNodes("/bookstore//book/title");
                  for(inti= 0;i< nodes.size();i++) {
                        Nodenode= (Node)nodes.get(i);
                        System.out.println(node.getText());
                  }
            }
      }
    • selectSingleNode()

    • selectNodes()

    • 注意:要導(dǎo)包 jaxen...jar

    • 創(chuàng)建解析器 SAXReader reader = new SAXReader()

    • 解析xml 獲得document對象 Document document = reader.read(url)

    • //    nodename 選取此節(jié)點(diǎn)。

    • //    /     從根節(jié)點(diǎn)選取。

    • //    //     從匹配選擇的當(dāng)前節(jié)點(diǎn)選擇文檔中的節(jié)點(diǎn),而不考慮它們的位置。

    • //    ..     選取當(dāng)前節(jié)點(diǎn)的父節(jié)點(diǎn)。

    • //    @     選取屬性。

    • //      [@屬性名]    屬性過濾

    • //      [標(biāo)簽名]     子元素過濾

    •      @Test

           //遍歷所有元素節(jié)點(diǎn)

    •  publicvoidtest2()throwsException{
                  //創(chuàng)建一個(gè)xml解析對象
                  SAXReaderreader= new SAXReader();
                  //把xml文檔加載到document對象中
                  Documentdocument= reader.read("src/Book.xml");
                  Elementroot= document.getRootElement();
                  treeWalk(root);
            }
            
            privatevoidtreeWalk(Elementele){
                  //輸出當(dāng)前節(jié)點(diǎn)的名字
                  System.out.println(ele.getName());
                  //ele.nodeCount()得到當(dāng)前節(jié)點(diǎn)的所有子節(jié)點(diǎn)的數(shù)量
                  for(inti= 0;i
    • public classTestDom4j {
            @Test
            publicvoidtest1()throwsException{
                  //創(chuàng)建一個(gè)xml解析對象
                  SAXReaderreader= new SAXReader();
                  //把xml文檔加載到document對象中
                  Documentdocument= reader.read("src/Book.xml");
                  Elementroot= document.getRootElement();
      //          Element bookNode = root.element("書");
      //          System.out.println(bookNode.getName());
                  //得到當(dāng)前節(jié)點(diǎn)所有的子節(jié)點(diǎn)
                  Listlist= root.elements();
                  //得到第二本書對象
                  ElementsecondBook= (Element)list.get(1);
                  //得到當(dāng)前節(jié)點(diǎn)的文本內(nèi)容
                  Stringname= secondBook.element("書名").getText();
                  System.out.println(name);
            }
    • 導(dǎo)入jar包 dom4j.jar

    • 創(chuàng)建解析器

    • 解析xml 獲得document對象

    • SAXReader reader = new SAXReader()

    • Document document = reader.read(url)

    • JAXP sun公司提供的解析 支持dom和sax

    • JDOM

    • DOM4J dom for java民間方式,但是是事實(shí)方式,非常好,支持dom

    • 解析xml

    • XPATH 專門用于查詢

上述就是小編為大家分享的什么是XML了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


當(dāng)前標(biāo)題:什么是XML
分享URL:http://weahome.cn/article/pspcdj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部