啥都不说直接开始写代码,因为你看到这个文章就知道webservice是啥了,现在跟你说怎么用
服务器端
创建接口
@WebService public interface HelloWord { String sayHi(String name); } 实现这个接口@WebService(endpointInterface="com.zmj.service.system.HelloWord") public class HelloWordImpl implements HelloWord{ @Override public String sayHi(String name) { return name+"您好"; } } 主函数public class HelloWordMain { public static void main(String args[]){ HelloWord hw = new HelloWordImpl(); //调用Endpoint的publish方法发布Web Service Endpoint.publish("http://127.0.0.1:9091/serviceTest", hw); System.out.println("Web Service暴露成功!"); } } 服务器端的使用就分成两种了,一种是直接通过我们暴漏的url直接使用,另一种是把暴露的代码生成到本地,服务器端使用生成到本地的代码,下面分别作为介绍 直接main方法加上下面代码就行了 一.URL url = new URL("http://127.0.0.1:9091/serviceTest?wsdl"); QName qname = new QName("http://impl.system.service.zmj.com/","HelloWordImplService"); Service service = Service.create(url,qname); HelloWord helloWord = service.getPort(HelloWord.class); System.out.println(helloWord.sayHi("赵梦杰"));
二.第二种的使用首先你要把代码通过url生成到自己的编译器上去,由于我使用的是idea所以现在我们就之介绍idea的生成方式
Tools->webService->Generate Java Code From Wsdl
会有弹出框 记住Web Service PlatFrom 一定要选Glassfish /JAX_WS2.2 RI /Metro 1.X/JWSDP 2.2这一项因为这个是idea自带的选择其他的还需要下载等很麻烦
HelloWordImplService factory = new HelloWordImplService(); HelloWord helloWord = factory.getHelloWordImplPort(); System.out.println(helloWord.sayHi("赵梦杰")); 亲测可用如果有问题可以一起交流分享。