XML方面的面試題及答案

    時(shí)間:2024-05-30 12:19:14 J2EE培訓(xùn) 我要投稿
    • 相關(guān)推薦

    關(guān)于XML方面的面試題及答案

      XML指的是可擴(kuò)展標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言的子集,是一種用于標(biāo)記電子文件使其具有結(jié)構(gòu)性的標(biāo)記語言。下面YJBYS小編為大家整理了關(guān)于XML方面的面試題及答案,希望對(duì)你有所幫助。

    關(guān)于XML方面的面試題及答案

      1、xml有哪些解析技術(shù)?區(qū)別是什么?

      答:有DOM,SAX,STAX等

      DOM:處理大型文件時(shí)其性能下降的非常厲害。這個(gè)問題是由DOM的樹結(jié)構(gòu)所造成的,這種結(jié)構(gòu)占用的內(nèi)存較多,而且DOM必須在解析文件之前把整個(gè)文檔裝入內(nèi)存,適合對(duì)XML的隨機(jī)訪問SAX:不現(xiàn)于DOM,SAX是事件驅(qū)動(dòng)型的XML解析方式。它順序讀取XML文件,不需要一次全部裝載整個(gè)文件。當(dāng)遇到像文件開頭,文檔結(jié)束,或者標(biāo)簽開頭與標(biāo)簽結(jié)束時(shí),它會(huì)觸發(fā)一個(gè)事件,用戶通過在其回調(diào)事件中寫入處理代碼來處理XML文件,適合對(duì)XML的順序訪問

      STAX:Streaming API for XML (StAX)

      2、你在項(xiàng)目中用到了xml技術(shù)的哪些方面?如何實(shí)現(xiàn)的?

      答:用到了數(shù)據(jù)存貯,信息配置兩方面。在做數(shù)據(jù)交換平臺(tái)時(shí),將不能數(shù)據(jù)源的數(shù)據(jù)組裝成XML文件,然后將XML文件壓縮打包加密后通過網(wǎng)絡(luò)傳送給接收者,接收解密與解壓縮后再同XML文件中還原相關(guān)信息進(jìn)行處理。在做軟件配置時(shí),利用XML可以很方便的進(jìn)行,軟件的各種配置參數(shù)都存貯在XML文件中。

      3、用jdom解析xml文件時(shí)如何解決中文問題?如何解析?

      答:看如下代碼,用編碼方式加以解決

      package test;

      import java.io.*;

      public class DOMTest

      {

      private String inFile = "c:\people.xml";

      private String outFile = "c:\people.xml";

      public static void main(String args[])

      {

      new DOMTest();

      }

      public DOMTest()

      {

      try

      {

      javax.xml.parsers.DocumentBuilder builder =

      javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder();

      org.w3c.dom.Document doc = builder.newDocument();

      org.w3c.dom.Element root = doc.createElement("老師");

      org.w3c.dom.Element wang = doc.createElement("王");

      org.w3c.dom.Element liu = doc.createElement("劉");

      wang.appendChild(doc.createTextNode("我是王老師"));

      root.appendChild(wang);

      doc.appendChild(root);

      javax.xml.transform.Transformer transformer =

      javax.xml.transform.TransformerFactory.newInstance().newTransformer();

      transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING, "gb2312");

      transformer.setOutputProperty(javax.xml.transform.OutputKeys.INDENT, "yes");

      transformer.transform(new javax.xml.transform.dom.DOMSource(doc),

      new

      javax.xml.transform.stream.StreamResult(outFile));

      }

      catch (Exception e)

      {

      System.out.println (e.getMessage());

      }

      }

      }

      4、編程用JAVA解析XML的方式.

      答:用SAX方式解析XML,XML文件如下:

      王小明

      信息學(xué)院

      6258113

      男,1955年生,博士,95年調(diào)入海南大學(xué)

      事件回調(diào)類SAXHandler.java

      import java.io.*;

      import java.util.Hashtable;

      import org.xml.sax.*;

      public class SAXHandler extends HandlerBase

      {

      private Hashtable table = new Hashtable();

      private String currentElement = null;

      private String currentValue = null;

      public void setTable(Hashtable table)

      {

      this.table = table;

      }

      public Hashtable getTable()

      {

      return table;

      }

      public void startElement(String tag, AttributeList attrs)

      throws SAXException

      {

      currentElement = tag;

      }

      public void characters(char[] ch, int start, int length)

      throws SAXException

      {

      currentValue = new String(ch, start, length);

      }

      public void endElement(String name) throws SAXException

      {

      if (currentElement.equals(name))

      table.put(currentElement, currentValue);

      }

      }

      JSP內(nèi)容顯示源碼,SaxXml.jsp:

    【XML方面的面試題及答案】相關(guān)文章:

    關(guān)于J2EE MVC方面的面試題及答案03-17

    微軟面試題及答案03-12

    Adobe面試題及答案01-22

    精選C++面試題及答案05-23

    linux認(rèn)證的面試題及答案12-01

    java面試題2017及答案03-06

    Java main方法面試題及答案03-14

    NIIT認(rèn)證Java面試題及答案03-30

    高級(jí)Java面試題及答案201602-26

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      亚洲一区亚洲二区欧美一区 | 婷婷97狠狠做 | 中文字幕在线观看日韩 | 中日韩亚洲免费视频 | 亚洲阿v天堂2020在线播放 | 天堂va欧美ⅴa亚洲va在线 |