webservice接口开发有用到Axis二、XFire、CXF等框架发布经过获取相关的wsdl文件便可实现远程通信数据交互。
Axis2配合相关的IDE生成服务并发布到服务器上面至关简单和根据选择其中之一的wsdl引擎生成客户端调用java类,感受类库jar包比较庞大应用起来也比较复杂。
XFire是比较强大的webservice框架,容易与web容器整合,以及spring提供整合支持。
CXF是apache收购XFire后改造产物,功能也至关强大。
而JDK6自带了webservice特性,能够不使用web容器,深感部署之简单,真正的轻量级,能够使你集中尽力解决服务端的相关功能设计与实现。 java
下面介绍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()是服务类。不过类的包名必须定义,不然会报错。
在实际项目开发中能够服务地址从硬编码中抽离处理,写到配置文件或者数据库中方便维护管理,修改地址从前服务便可。