webservice的技术有很多,现在流行的有JAX-WS、XFile、CXF、Axis1、Axis2等。不过JAX-WS是webservice技术最轻量级的,不需要引入额外jar包。
在服务器端,用户只需要通过Java语言定义远程调用所需要实现的接口SEI(service endpoint interface),并提供相关的实现,通过调用JAX-WS的服务发布接口就可以将其发布为WebService接口。
在客户端,用户可以通过JAX-WS的API创建一个代理(用本地对象来替代远程的服务)来实现对于远程服务器端的调用。当然 JAX-WS 也提供了一组针对底层消息进行操作的API调用,你可以通过Dispatch 直接使用SOAP消息或XML消息发送请求或者使用Provider处理SOAP或XML消息。
我们使用JAX-WS开发WebService只需要很简单的几个步骤:写接口和实现=>发布=>生成客户端。
开发webservice服务端我们可以先编写接口,接口中只需要把类注明为@WebService,把要暴露给客户端的方法注明为@WebMethod即可。
1:编写webservice服务端接口
package service;
import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
/**
* 测试webservice接口
* @author
*
*/
@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC)
public interface TestService {
/**
* 测试接口
*/
@WebMethod
void SayHiDefault();
@WebMethod
void SayHi(@WebParam(name = "name") String name);
@WebMethod
String sayHello(String userName);
}
2:编写接口的实现类