WebService入门HelloWS

编写服务端:


服务端接口:

package com.atguigu.day01_ws.ws;

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

/**
 * 定义SEI
 * @author xiao
 *
 */
@WebService
public interface HelloWS {
	@WebMethod
	public String sayHello(String name);
	
}
服务端实现:

package com.atguigu.day01_ws.ws;

import javax.jws.WebService;

/**
 * SEI的实现
 * @author xiao
 *
 */
@WebService
public class HelloWSImpl implements HelloWS {

	@Override
	public String sayHello(String name) {
		System.out.println("server sayHello()"+name);
		return "Hello "+name;
	}

}
服务端的入口main方法:

package com.atguigu.day01_ws.ws.server;

import javax.xml.ws.Endpoint;

import com.atguigu.day01_ws.ws.HelloWSImpl;

/**
 * 发布webservice
 * @author xiao
 *
 */
public class ServerTest {
	public static void main(String[] args){
		String address="http://192.168.24.155:8011/day01_ws/hellows";
		
		Endpoint.publish(address, new HelloWSImpl());
		System.out.println("发布Webservice成功!");
		
	}
}

到此我们的服务端就编写完成:

我们在浏览器中可以查看我们发布的服务:

点击eclipse中的浏览器按钮:


     下面我们利用JDK的工具自动生成一些客户端调用的代码:wsimport.exe


     用命令行在客户端的src目录下输入wsimport -keep url,就可以自动编译服务端,生成一些客户端调用的代码:如下

此时在客户端会出现如下的包文件:

下面写客户端的调用:

package com.atguigu.day01_ws_clienttest;

import com.atguigu.day01_ws.ws.HelloWSImpl;
import com.atguigu.day01_ws.ws.HelloWSImplService;

/**
 * 调用webservice
 * @author xiao
 *
 */
public class ClientTest {
	public static void main(String[] args) {
		HelloWSImplService factory=new HelloWSImplService();
		HelloWSImpl helloWS=factory.getHelloWSImplPort();
		System.out.println(helloWS.getClass());
		String result=helloWS.sayHello("肖红");
		System.out.println("客户端调用服务端的方法:client "+result);
	}
}

运行之后:


     至此一个webservice程序就完成了。

     在这个Demo中,我们提到了客户端和服务端,在服务端我们主要编写一个main方法,在这个方法中,我们用到了一个发布地址,在浏览器访问中,我们输入发布地址+?wsdl得到我们发布的服务路径,在客户端我们用JDK工具自动解析wsdl文件,然后在客户端我们就能调用了。具体的深入研究我们后面的博客详细介绍。





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值