基于Java构建Web Service方法


前言: 其实博主也是个菜鸟,只不过被逼要写一个程序调用某网站的机票服务,于是不得不学习调用Web Service。以下是博主从学习中总结出的基本方法,其中有些不完善,欢迎交流。


步骤:

一、创建Web Service工程(直接调用提供的服务请略过)

1.创建一个Web service工程(Project NameExample),Framwork选择JAX-WS方式,其他随意(原因请搜索Web Service Framework工作方式);

2.创建Service中的业务类(也就是你要实现的业务逻辑,.java文件)

ESTest.java

package scu.cs.cpu
public class Test{
      public Test() {}
      public void setMessage() {
             System.out.println(“Thisis a demo !”);
}
}


3.发布Web Service(在工具栏按钮部署的左起第二个),选择New Web Service,进入选项面板:

  • 第一个页面,如果没有创建WSDL(如果你是第一次开发Web Service肯定没有创建的)请勾选“Create web service from java Class,否则勾选另一个,其他随意;

  • 第二个页面,勾选“Generate WSDL in project”,其他随意(请注意“Service Port”这个表单,里面有你要访问的端口,以后记得更改);

    4.添加库文件,选中工程“Example”,右击Properties->Java Build Path –> Libraries –>addLibrary ->MyEclipse Libraries ,勾选带有“JAX-WS”的选项(为什么呢,因为你刚才选的工作方式是JAX-WS,所以要把这些要用到的库文件添加进去);

5.开启Tomcat 8服务器(或者其他服务器,博主没有测试过),将该工程“Example”部署到已打开的服务器Tomcat(请搜索如何配置和部署Tomcat服务器);

6.Web Service到此结束。

 

二、创建调用Web Service的客户端工程

1.创建一个Java Project(若有其他需求也可创建其他类型);

2.选中该工程,创建Web Service Client (在工具栏按钮部署的左起第二个),选择New Web Service Client,进入选项面板;

  • 不要理第一个面板,下一步;

  • 选择WSDL URL表单,填入服务地址,例如:http://webservice.36wu.com/weatherService.asmx?wsdl(注意格式:http://......?wsdl,博主这个是可以用的用来查天气的,就是账户失效了),这样在本地工程下就会自动生成服务接口类,调用服务就像调用本地方法一样easy(博主瞬间happy!!!);

    3.创建一个执行类(就是带main方法的类),测试你的服务吧;

ESTestClient.java

import scu.cs.cpu.Test;

public class TestClient{

      public static void main(String[] args) {

             Testtest = new Test();

             test.setMessage();

}

}

4.客户端到此结束。

 

总结:

     其实这个web service调用还是比较简单的,但是博主学习的时候找了好多教程,出现了各种错误费了好久,所以如果碰到问题的小朋友请不要气馁,楼主比你苦~~~如果遇到问题,欢迎勾搭楼主啊!

 

 

引入(以下均为百度所得,如有错误望请指正):

  • SOAP : SOAPWeb Service的标准通信协议,SOAPsimple object access protocoll的缩写,简单对象访问协议.是一种标准化的传输消息的XML消息格式。

  • WSDL : WSDL是一种基于XML格式的关于web服务的描述语言。web service的提供者将自己的web服务的所有相关内容,如所提供的服务的传输方式,服务方法接口,接口参数等,生成相应的完全文档,发布给使用者。使用者可以通过文档,创建相应的SOAP请求消息,通过HTTP传递给Web Service提供者;完成服务请求后,将SOAP返回消息传回请求者

   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值