java http xml java通過http來訪問一個xml文件的讀取過程

上代碼

package test;

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class XmlController {

  public static void main(String arg[]) {
   
    InputStream is = null;
    Document document = null;
    try {
      URL url =
          new URL("http://xxxx?method=getInfo&Id=001");
      URLConnection con = url.openConnection();
      is = con.getInputStream();
      // DOM 解析器
      DocumentBuilderFactory domfac = DocumentBuilderFactory.newInstance();
      // DOM 工廠獲得 DOM 解析器
      DocumentBuilder dombuilder = domfac.newDocumentBuilder();
      document = dombuilder.parse(is);

    } catch (SAXException e) {
      e.printStackTrace();
    } catch (ParserConfigurationException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();

    }
    // root要素取得
    Element elementRoot = (document).getDocumentElement();

    Element elementCount = (Element) elementRoot.getElementsByTagName("Vulinfo").item(0);

    System.out.println(elementCount.getNodeName());
    System.out.println(elementCount.getElementsByTagName("ID").item(0).getNodeName());
    System.out.println(
        elementCount.getElementsByTagName("ID").item(0).getFirstChild().getNodeValue());

    Element Data = (Element) elementCount.getElementsByTagName("Data").item(0);
    
    String title =
        eleVulinfoData.getElementsByTagName("Title").item(0).getFirstChild().getNodeValue();
    System.out.println(title);

   
    Element DescriptionData =
        (Element) eleVulinfoData.getElementsByTagName("Description").item(0);
    String Description = VulinfoDescriptionData.getElementsByTagName("Overview").item(0)
        .getFirstChild().getNodeValue();
    System.out.println(Description);

   
    Element AffectedData = (Element) eleVulinfoData.getElementsByTagName("Affected").item(0);
    Element AffectedItem = (Element) AffectedData.getElementsByTagName("AffectedItem").item(0);
    String AffectedData_Name =
        AffectedItem.getElementsByTagName("Name").item(0).getFirstChild().getNodeValue();
    System.out.println(AffectedData_Name);
    String ProductName =
        AffectedItem.getElementsByTagName("ProductName").item(0).getFirstChild().getNodeValue();
    System.out.println(ProductName);
   
    NodeList VersionNumber = elementCount.getElementsByTagName("VersionNumber");
    System.out.println(VersionNumber.getLength());
    for (int i = 0; i < VersionNumber.getLength(); i++) {
      Element elementItemName = (Element) VersionNumber.item(i);
      String itemName = elementItemName.getFirstChild().getNodeValue();
      System.out.println(itemName);
    }
 

    // History
    Element HistoryData = (Element) eleVulinfoData.getElementsByTagName("History").item(0);
    Element HistoryItem = (Element) HistoryData.getElementsByTagName("HistoryItem").item(0);
    String Description = null;
    System.out.println(HistoryItem.getElementsByTagName("Description").getLength());
    if (null != HistoryItem.getElementsByTagName("Description")
        && HistoryItem.getElementsByTagName("Description").getLength() != 0
        && null != HistoryItem.getElementsByTagName("Description").item(0).getFirstChild()) {
      Description =
          HistoryItem.getElementsByTagName("Description").item(0).getFirstChild().getNodeValue();
    }
    System.out.println(Description);

  }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章