国产探花免费观看_亚洲丰满少妇自慰呻吟_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程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 扬中市| 吉木乃县| 五莲县| 丹棱县| 江津市| 辽中县| 福建省| 桂平市| 库伦旗| 宿松县| 长葛市| 玉溪市| 尉犁县| 赞皇县| 军事| 东港市| 精河县| 蓝山县| 抚州市| 建始县| 怀安县| 乾安县| 长白| 剑川县| 克东县| 玉屏| 桓台县| 北川| 襄垣县| 永嘉县| 马关县| 新晃| 綦江县| 郁南县| 台江县| 赤壁市| 汪清县| 乐清市| 丹东市| 兴和县| 铁力市|