利用webservice获取股价(java)
最近项目中有需要用到股价,于是在网上找了一番,没有一个直接就能用的。自己摸索了一下,终于搞定一个顾大家参考。
package test;
import java.util.Arrays;
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
/**
*
* 功能概述:<br>
*
* @author applerockhool
* @version 2010-4-29
*/
public class Test {
public static void main(String[] args) {
try {
// WebService URL,详细说明直接进入网址
String service_url = "http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx";
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(service_url));
// 设置要调用的方法
call.setOperationName(new QName("http://WebXml.com.cn/",
"getStockInfoByCode"));
// 加入参数
call.addParameter(
new QName("http://WebXml.com.cn/", "theStockCode"),
org.apache.axis.encoding.XMLType.XSD_STRING,
javax.xml.rpc.ParameterMode.IN);
// 设定返回类型
call.setReturnClass(String[].class);
call.setUseSOAPAction(true);
call.setSOAPActionURI("http://WebXml.com.cn/getStockInfoByCode");
// 设定股票代码
String code = "sh600028";
/*
* 【返回结果说明:】
* String(0)股票代号、String(1)股票名称、String(2)行情时间、String(3)最新价(元)、
* String(4)昨收盘(元)、String(5)今开盘(元)、String(6)涨跌额(元)、String(7)最低(元)、
* String(8)最高(元)、String(9)涨跌幅(%)、String(10)成交量(手)、String(11)成交额(万元)、
* String(12)竞买价(元)、String(13)竞卖价(元)、String(14)委比(%)、String(15)-String(19)买一 -
* 买五(元)/手、String(20)-String(24)卖一 - 卖五(元)/手。
*/
String[] result = (String[]) call.invoke(new Object[] { code });
System.out.println(Arrays.deepToString(result));
} catch (Exception e) {
System.err.println(e.toString());
}
}
}
注意:
相关文档:
在java.math包中有个BigDecimal类,通过这个类可以进行精确计算. 我们知道BigDecimal有个setScale(int 精度,int 舍入模式)方法,随之而来问题出现了,当运行如下代码时:
/**
* @author troy(J2EE)
* @version 1.0
*/
import java.math.*;
public class Test{
& ......
用的是Commons上传组件,下载地址:Commons
网上找的小例子改的,修改了部分错误。
1,FileUpload.java
package com.fileupload;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.nio.charset.Charset;
import java.util.Iterator;
import java.util.List;
import ja ......
MySql的时间类型有 Java中与之对应的时间类型
date ......
编写一个程序,判断一个字符串是否是合法的Java标识符;
//create string
import java.util.regex.*;
public class Split {
public static void main (String[] args) {
Pattern pattern = Pattern.compile("[,]");
String[] arrStr = pattern.split("abstract,break,byte,boole ......
一、线程
1 线程的创建
创建线程通常有两种方法: 1) 扩展Thread类实现线程的创建是最常用也是最直接的一种方法,通过继承类Thread实现线程体;2) 通过实现Runnable接口实现线程体。
2 Thread类的几种构造函数
1) Thread()
2) Thread(Runnable target)
3) T ......