- 浏览: 272399 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
tonytony3:
THANK YOU
Android多级树形菜单的实现 -
haiyang08101:
deleteNumber = "421f481e-7 ...
java对xml文件做增删改查 -
求求你帮帮我:
怎么把我的空格也当成节点处理了?
java对xml文件做增删改查 -
求求你帮帮我:
deleteNumber = "421f481e-7 ...
java对xml文件做增删改查 -
lpj13579:
多谢分享,学习学习
高仿小米盒子UI效果实现
package myweather;
import java.io.*;
import java.net.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import javax.swing.JOptionPane;
public class MyWeather {
private static String getSoapRequest(String city) {
try {
InputStreamReader isr = new InputStreamReader(new FileInputStream("weather.xml"));
BufferedReader reader = new BufferedReader(isr);
String soap = "";
String tmp;
while ((tmp = reader.readLine()) != null) {
soap += tmp;
}
reader.close();
isr.close();
return soap.replace("${city}$", city);
} catch (Exception ex) {
ex.printStackTrace();
return null;
}
}
private static InputStream getSoapInputStream(String city)throws Exception
{
try
{
String soap =getSoapRequest(city);
if(soap==null)
{
return null;
}
URL url=new URL("http://www.webxml.com.cn/WebServices/WeatherWebService.asmx");
URLConnection conn=url.openConnection();
conn.setUseCaches(false);
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestProperty("Content-Length", Integer.toString(soap.length()));
conn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
conn.setRequestProperty("SOAPAction","http://WebXml.com.cn/getWeatherbyCityName");
OutputStream os=conn.getOutputStream();
OutputStreamWriter osw=new OutputStreamWriter(os,"utf-8");
//osw.write(new String(soap.getBytes(),"utf-8"));
osw.write(soap);
osw.flush();
osw.close();
InputStream is=conn.getInputStream();
return is;
}
catch(Exception e)
{
e.printStackTrace();
return null;
}
}
public static String getWeather(String city)
{
try
{
Document doc;
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
DocumentBuilder db=dbf.newDocumentBuilder();
InputStream is=getSoapInputStream(city);
doc=db.parse(is);
NodeList nl=doc.getElementsByTagName("getWeatherbyCityNameResult");
Node n=nl.item(0);
//JOptionPane.showMessageDialog(null,n.getChildNodes().getLength());
for (int i=0;i<n.getChildNodes().getLength()-1;i++)
{
String weather=n.getChildNodes().item(i).getTextContent();
System.out.print(weather);
}
is.close();
return "null";
}
catch(Exception e)
{
e.printStackTrace();
return null;
}
}
public static void main (String [] args )throws Exception
{
//System.out.println(MyWeather.getWeather("上海"));
MyWeather.getWeather("广州");
}
}
//将以下XML保存为weather.xml
/*XML:<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<getWeatherbyCityName xmlns="http://WebXml.com.cn/">
<theCityName>${city}$</theCityName>
</getWeatherbyCityName>
</soap:Body>
</soap:Envelope>*/
import java.io.*;
import java.net.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import javax.swing.JOptionPane;
public class MyWeather {
private static String getSoapRequest(String city) {
try {
InputStreamReader isr = new InputStreamReader(new FileInputStream("weather.xml"));
BufferedReader reader = new BufferedReader(isr);
String soap = "";
String tmp;
while ((tmp = reader.readLine()) != null) {
soap += tmp;
}
reader.close();
isr.close();
return soap.replace("${city}$", city);
} catch (Exception ex) {
ex.printStackTrace();
return null;
}
}
private static InputStream getSoapInputStream(String city)throws Exception
{
try
{
String soap =getSoapRequest(city);
if(soap==null)
{
return null;
}
URL url=new URL("http://www.webxml.com.cn/WebServices/WeatherWebService.asmx");
URLConnection conn=url.openConnection();
conn.setUseCaches(false);
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestProperty("Content-Length", Integer.toString(soap.length()));
conn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
conn.setRequestProperty("SOAPAction","http://WebXml.com.cn/getWeatherbyCityName");
OutputStream os=conn.getOutputStream();
OutputStreamWriter osw=new OutputStreamWriter(os,"utf-8");
//osw.write(new String(soap.getBytes(),"utf-8"));
osw.write(soap);
osw.flush();
osw.close();
InputStream is=conn.getInputStream();
return is;
}
catch(Exception e)
{
e.printStackTrace();
return null;
}
}
public static String getWeather(String city)
{
try
{
Document doc;
DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
dbf.setNamespaceAware(true);
DocumentBuilder db=dbf.newDocumentBuilder();
InputStream is=getSoapInputStream(city);
doc=db.parse(is);
NodeList nl=doc.getElementsByTagName("getWeatherbyCityNameResult");
Node n=nl.item(0);
//JOptionPane.showMessageDialog(null,n.getChildNodes().getLength());
for (int i=0;i<n.getChildNodes().getLength()-1;i++)
{
String weather=n.getChildNodes().item(i).getTextContent();
System.out.print(weather);
}
is.close();
return "null";
}
catch(Exception e)
{
e.printStackTrace();
return null;
}
}
public static void main (String [] args )throws Exception
{
//System.out.println(MyWeather.getWeather("上海"));
MyWeather.getWeather("广州");
}
}
//将以下XML保存为weather.xml
/*XML:<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<getWeatherbyCityName xmlns="http://WebXml.com.cn/">
<theCityName>${city}$</theCityName>
</getWeatherbyCityName>
</soap:Body>
</soap:Envelope>*/
发表评论
-
Android 三大图片加载框架比较
2016-11-30 10:31 10881.哪三大图片加载框架? 1) Pi ... -
Java Calendar 类的时间操作
2016-06-01 21:02 668ava Calendar 类时间操作,这也许是创建日历和管理 ... -
获取电脑ip,所在省份城市
2014-08-27 09:45 683调用了腾讯的ip接口(http://fw.qq.com ... -
获取Android签名证书的sha1值
2014-08-23 23:14 664前言:今天开始研 ... -
java中Keytool的使用总结
2014-08-23 22:40 562J2SDK提供了keytool命令行工具,可以根据指定的参数 ... -
Java基础——Java语法基础(3)
2014-06-19 10:13 570程序控制流程 1、顺序结构 按顺序执行 2、i ... -
Java基础——Java语法基础(1)
2014-06-19 10:11 802Java代码基本格式 Java ... -
android MD5校验码的生成与算法实现
2014-06-17 10:58 887在Java中,java.security.Mes ... -
java中的字符串分割函数 split
2014-06-06 15:01 696Java中的我们可以利用sp ... -
java对xml文件做增删改查
2014-06-04 20:40 1840package com.wss; import jav ... -
获取网络的json文件 Gson解析json文件
2013-11-07 16:21 531/** * 获取网络的json文件 * @pa ... -
Java获取文件类型Mime Type的各种方法
2013-09-16 15:46 1145使用 javax.activation.MimetypesF ... -
Java栈与堆
2013-06-20 22:18 9251. 栈(stack)与堆(heap)都 ... -
Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead.
2013-05-02 12:01 698解决Android requires compiler co ... -
java创建文件和目录
2013-04-25 10:30 610创建文件和目录的关键技术点如下: 1、File类的cr ... -
iava创建文件和目录
2013-04-24 19:42 796创建文件和目录的关键技术点如下: 1、File类的cr ... -
Java程序发送邮件的两种方法
2013-01-25 10:57 1873前一段时间我在博客中发表过Java接收解析邮件的程序 ... -
SharedPreferences保存数据
2013-01-24 15:09 889package com.test; import ja ... -
java 把logcat日志保存到SD里
2013-01-22 20:21 1041private void saveLogcat(){ ... -
Android开发系列:查看LogCat日志
2013-01-19 13:06 3450LogCat日志 1. Window & ...
相关推荐
在IT行业中,调用Web服务并解析XML是常见的任务,特别是在Java开发中。Web服务,尤其是基于SOAP(Simple Object Access Protocol)的,提供了一种标准的跨平台、跨语言的数据交换方式。本教程将深入讲解如何在Java...
在本实例中,我们将深入探讨如何使用SOAP协议进行Web服务调用,以及解析XML文档的过程。 首先,理解SOAP协议的关键在于其结构。一个SOAP消息通常包含三个主要部分:SOAP Envelope、SOAP Header和SOAP Body。SOAP ...
### Python调用WebService接口实例说明 #### 背景与目的 在当今信息化时代,不同系统之间的通信变得越来越重要。为了实现系统间的高效交互,多种技术手段被开发出来,其中WebService作为一种常用的服务端口,提供了...
- **动态生成代理类**:Java 使用 JAX-WS(Java API for XML Web Services)框架,可以自动生成调用 WebService 的代理类。通常,这一步可以通过命令行工具(如 wsimport)或者 IDE(如 Eclipse、IntelliJ IDEA)的...
在Java中,调用WebService通常涉及以下步骤: 1. **了解WebService接口**:首先,你需要知道天气预报的WebService提供哪些功能,这通常可以通过查看其WSDL(Web服务描述语言)文档来实现。WSDL文件定义了服务的接口...
首先,理解SOAP是一种基于XML的协议,用于在Web上交换结构化的和类型化的信息,特别适合于服务接口的远程调用。 Java访问.Net Webservice的过程大致分为以下步骤: 1. **创建SOAP请求**:首先,我们需要构建一个...
### Java开发WebService实例详解 在IT领域,尤其是企业级应用开发中,WebService作为一种标准化的、跨平台的服务交互方式,被广泛应用于系统间的数据交换与服务调用。本文将基于给定的“Java开发WebService实例”...
PB接口调用Web服务(Webservice)是一种在PowerBuilder(PB)应用程序中集成Web服务功能的方法,这在当今的分布式系统开发中非常常见。PowerBuilder 9(PB9)提供了强大的支持,允许开发者通过简单的API调用来访问和...
总结,AJAX异步调用WebService是现代Web应用中常见的一种通信方式,它极大地提升了用户体验。理解并掌握这一技术,对于Web开发者来说至关重要。通过实际的代码示例和不断的实践,你可以更深入地理解和应用这个技术。
Java调用WebService是Web服务交互的一种常见方式,而Axis2是一个高效的、可扩展的Web服务框架,它在Java世界中广泛用于创建和消费Web服务。本文将深入探讨使用Axis2.jar包来调用WebService的相关知识点。 一、Axis2...
通过运行这个项目,我们可以看到如何实际操作这些步骤,实现从Java应用调用WebService获取天气预报数据的过程。 总的来说,这个项目展示了Java如何利用WebService技术实现跨系统的信息交互,特别是与中央气象台的...
在Java中使用Axis调用Webservice,首先需要引入必要的库文件。这些库通常包括axis.jar、axis-wsdl4j.jar、commons-discovery.jar、commons-logging.jar、jaxrpc.jar和wsdl4j.jar等。这些库包含了处理SOAP消息、解析...
在Java中,调用Web Service服务并解析返回的XML数据是一项常见的任务。Web Service通常以SOAP(Simple Object Access Protocol)消息的形式返回数据,这些消息包含了封装在XML结构中的业务信息。本篇将深入讲解如何...
Java ASIX调用WebService是Java开发中的一项常见任务,它涉及到使用Java API来与Web服务进行交互。在本文中,我们将深入探讨这个主题,包括ASIX(可能指的是Axis,一个用于构建和部署Web服务的开源工具)在Java中的...
JavaScript调用WebService是一种常见的在客户端与服务器之间进行数据交互的方式,尤其在Web应用程序中,它允许JavaScript代码直接访问Web服务提供的功能。以下是对这个实例的详细解析和相关知识点的总结: 1. ...
Java访问WebService返回XML数据的方法是Java开发者在与Web服务交互时常见的需求,特别是当Web服务以XML格式提供数据时。本篇文章将详细讲解如何通过Java实现这一过程,并介绍相关的技术点。 首先,为了访问...
Java 调用天气Webservice是Java开发中一个常见的任务,主要是通过网络接口获取特定城市的天气信息。在本文中,我们将深入探讨如何使用Java来调用天气Webservice,并提供一个具体的实例代码,帮助开发者理解这一过程...
VC6中可以使用DOM(文档对象模型)或SAX(简单API for XML)库来处理XML。 7. **调试**:使用VC6的调试工具,如输出窗口和断点,对调用过程进行调试。也可以在Web Service端设置日志,以获取更详细的错误信息。 ...
在Android中调用Webservice,通常使用SOAP协议封装请求和解析响应。SOAP消息以XML格式表示,包含四个主要部分:Envelope、Header、Body和Fault。 2. **Android HTTP通信** Android通过HttpURLConnection或...
1. 加载XML文档:使用`javax.xml.parsers.DocumentBuilderFactory`类创建一个实例,并调用其`newDocumentBuilder()`方法生成`DocumentBuilder`对象。 2. 解析XML:使用`DocumentBuilder`对象的`parse()`方法读取XML...