国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Java訪問WebService返回XML數據的方法

2019-11-26 15:09:32
字體:
來源:轉載
供稿:網友

本文實例講述了Java訪問WebService返回XML數據的方法。分享給大家供大家參考。具體如下:

import java.io.IOException;import java.io.InputStream;import java.net.MalformedURLException;import java.net.URL;import java.net.URLConnection;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.PrintWriter;import org.w3c.dom.Document;import org.w3c.dom.DOMException;import org.xml.sax.SAXException;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import javax.xml.transform.OutputKeys;import javax.xml.transform.Transformer;import javax.xml.transform.TransformerConfigurationException;import javax.xml.transform.TransformerException;import javax.xml.transform.TransformerFactory;import javax.xml.transform.dom.DOMSource;import javax.xml.transform.stream.StreamResult;/**** @author xuechong* 6/11/2010 16:58* DomXMLString.java* 概述:純java方式訪問遠程WebService接口返回的xml格式的數據保存在本地*/public class DomXMLString{private static String SERVICES_HOST = "www.webxml.com.cn";//遠程WebService接口urlprivate static String NETDATA_URL = "http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx/getRegionProvince";//訪問遠程WebService接口返回的xml格式的數據保存在本地的絕對路徑private static String LOCAL_PC_SAVEFILE_URL = "E:dataTest/netDataToLocalFile.xml";private DomXMLString(){}public static void main(String[] args) throws Exception{Document document = getProvinceCode(NETDATA_URL);helloOK(document, LOCAL_PC_SAVEFILE_URL);}/*返回一個Document對象*/public static Document getProvinceCode(String netXMLDataURL){Document document = null;DocumentBuilderFactory documentBF = DocumentBuilderFactory.newInstance();documentBF.setNamespaceAware(true);try{DocumentBuilder documentB = documentBF.newDocumentBuilder();InputStream inputStream = getSoapInputStream(netXMLDataURL);//具體webService相關document = documentB.parse(inputStream);inputStream.close();}catch(DOMException e){e.printStackTrace();return null;}catch(ParserConfigurationException e){e.printStackTrace();return null;}catch (SAXException e){e.printStackTrace();return null;}catch(IOException e){e.printStackTrace();return null;}return document;}/*返回InputStream對象*/public static InputStream getSoapInputStream(String url){InputStream inputStream = null;try{URL urlObj = new URL(url);URLConnection urlConn = urlObj.openConnection();urlConn.setRequestProperty("Host", SERVICES_HOST);//具體webService相關urlConn.connect();inputStream = urlConn.getInputStream();}catch(MalformedURLException e){e.printStackTrace();}catch(IOException e){e.printStackTrace();}return inputStream;}/*訪問遠程(WebService)xml數據后返回的xml格式字符串并生成為本地文件*/public static void helloOK(Document document, String savaFileURL){TransformerFactory transF = TransformerFactory.newInstance();try{Transformer transformer = transF.newTransformer();DOMSource source = new DOMSource(document);transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");transformer.setOutputProperty(OutputKeys.INDENT, "YES");PrintWriter pw = new PrintWriter(new FileOutputStream(savaFileURL));StreamResult result = new StreamResult(pw);transformer.transform(source, result);System.out.println("生成xml文件成功!");}catch(TransformerConfigurationException e){System.out.println(e.getMessage());}catch(IllegalArgumentException e){System.out.println(e.getMessage());}catch(FileNotFoundException e){System.out.println(e.getMessage());}catch(TransformerException e){System.out.println(e.getMessage());}}}

希望本文所述對大家的java程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 林口县| 九台市| 蒙自县| 凌海市| 洛隆县| 武隆县| 延边| 安化县| 河源市| 孝感市| 灵宝市| 磴口县| 太白县| 河曲县| 广宁县| 凤翔县| 厦门市| 横峰县| 揭东县| 罗田县| 辛集市| 东宁县| 新源县| 亚东县| 郧西县| 萨迦县| 长春市| 隆安县| 丰原市| 南漳县| 那坡县| 防城港市| 宿迁市| 方城县| 南康市| 汤原县| 丹巴县| 苍南县| 新巴尔虎左旗| 璧山县| 鄂托克前旗|