1. 使用JDK开发WebService客户端和服务端

WebService主要有两种开发手段

1.使用Java JDK 开发

2.使用CXF开发

本文主要介绍使用JDK开发WebService的客户端和服务端。


一、服务端

1.  创建一个Java Project,命名为WS_Server

2.  编写接口

package com.ws.server;


/**
 * 接口,定义对外暴露的方法
 * @author Administrator
 *
 */
public interface IWebServiceServer {

	String sayHello(String name);

	String saveInfo(String name, String password);
}
3.  编写接口实现类

package com.ws.server;

import javax.jws.WebMethod;
import javax.jws.WebService;

@WebService
public class WebServiceServerImpl implements IWebServiceServer{

	@WebMethod
	public String sayHello(String name) {
		System.out.println("hello,"+name);
		return "hello";
	}

	@WebMethod
	public String saveInfo(String name, String password) {
		System.out.println("name:"+name+",password:"+password);
		return "save success";
	}
}

实现类用注解@WebService标识为一个WebService, @WebMethod标识WebService方法, 仅支持在使用 @WebService 注释来注释的类上使用 @WebMethod 注释

WebService的其他注释参考:http://blog.sina.com.cn/s/blog_551d2eea0101jwpv.html

4. 编写一个main方法对外发布WebService

package com.ws.server;

import javax.xml.ws.Endpoint;


public class WebServicePublish {
	public static void main(String[] args) {
		String address = "http://127.0.0.1/webService/server";
		//Endpoint.publish
		Endpoint.publish(address, new WebServiceServerImpl());
	}
}

5. 访问

在浏览器中输入:http://127.0.0.1/webService/server?wsdl,可以看到以下内容则表示服务端发布成功。

1. 使用JDK开发WebService客户端和服务端_第1张图片


二、客户端

1.  执行命令生成代码:wsimport -s E:\workspace\WS_Client\src -p com.ws.client -keep http://127.0.0.1/webService/server?wsdl
说明:
(1)wsimport 是java的一个命令,在bin目录下
(2)E:\workspace\WS_Client\src 为项目源码地址
(3)com.ws.client 将生成的客户端代码放到这里
(4)http://127.0.0.1/webService/server?wsdl 其中http://127.0.0.1/webService/server?wsdl是在服务器端发布的地址

1. 使用JDK开发WebService客户端和服务端_第2张图片

2.  调用WebService接口

package com.ws.client;

public class WebServiceClientTest {
	
	public static void main(String[] args) {
		//获取工厂
		WebServiceServerImplService factory = new WebServiceServerImplService();
		//根据工厂获取服务端WebService实现类
		WebServiceServerImpl webServiceServerImpl = factory.getWebServiceServerImplPort();
		webServiceServerImpl.sayHello("您好");
		webServiceServerImpl.saveInfo("lhw", "123456");
		
	}
}


运行结果:



至此,我们会使用JDK开发WebService服务端和客户端,接下来回讲解下网上一些免费WebService接口的调用。





你可能感兴趣的:(WebService)