JDK6开发原生webservice

随声附和 提交于 2019-12-04 00:57:38
    webservice接口开发有用到Axis2、XFire、CXF等框架发布通过获取相关的wsdl文件即可实现远程通讯数据交互。
 Axis2配合相关的IDE生成服务并发布到服务器上面相当简单和根据选择其中之一的wsdl引擎生成客户端调用java类,感觉类库jar包比较庞大应用起来也比较复杂。
     XFire是比较强大的webservice框架,容易与web容器整合,以及spring提供整合支持。
    CXF是apache收购XFire后改造产物,功能也相当强大。

    而JDK6自带了webservice特性,可以不使用web容器,深感部署之简单,真正的轻量级,可以使你集中尽力解决服务端的相关功能设计与实现。


 下面介绍JDK6自带的Webservice特性例子:

 IDE:eclipse javaee版
新建一个java工程后,建如下类即可简单实现webservice:

 package com.ws;
import javax.jws.WebService;
import javax.xml.ws.Endpoint;

@WebService
public class Helloword {
    public String sayHello() {
       return "helloworld";
      }
       public static void main(String[] args) {
       //发布一个WebService
       Endpoint.publish("http://localhost:9090/HelloWorld", new Helloword());
     }
       
}
启动main方法即可发布一个webservice服务,通过浏览器输入http://localhost:9090/Helloword?wsdl即可访问。
注:HelloWorld是一个普通类,只是在类的前面第4行加了注解 @WebService ,发布是在第11行,http://localhost:9090/HelloWorld是发布服务地址,其中new HelloWorld()是服务类。不过类的包名必须定义,否则会报错。
   在实际项目开发中可以服务地址从硬编码中抽离处理,写到配置文件或者数据库中方便维护管理,修改地址从前服务即可。
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!