一、服务端
1、接口,注意使用注解
package com.zqw.webservice.demo;
import javax.jws.WebMethod;
import javax.jws.WebService;
/**
* //TODO
*
* @author zhuquanwen
* @vesion 1.0
* @date 2019/11/8 21:10
* @since jdk1.8
*/
@WebService
public interface IHelloWorld {
@WebMethod
String sayHelloWorld(String username);
}
2、实现类,注意使用注解
package com.zqw.webservice.demo;
import javax.jws.WebService;
/**
* //TODO
*
* @author zhuquanwen
* @vesion 1.0
* @date 2019/11/8 21:12
* @since jdk1.8
*/
@WebService
public class HelloWorldImpl implements IHelloWorld {
@Override
public String sayHelloWorld(String username) {
System.out.println("username;" + username);
return "hello world,".concat(username);
}
}
3、发布类
package com.zqw.webservice.demo;
import javax.xml.ws.Endpoint;
/**
* //TODO
*
* @author zhuquanwen
* @vesion 1.0
* @date 2019/11/8 21:14
* @since jdk1.8
*/
public class Start {
public static void main(String[] args) {
Endpoint.publish("http://localhost:8788/helloworld", new HelloWorldImpl());
System.out.println("webservice服务已启动");
}
}
4、查看wsdl文档
访问http://localhost:8788/helloworld
二、客户端
1、生成客户端调用源码
使用jdk bin目录下的wsimport.exe
wsimport.exe -keep http://localhost:8788/helloworld?wsdl
2、调用
将生成的代码拷贝编译
将代码拷贝至编辑器,去掉.class文件
结构如下:
上图Client是我后创建的,不算
创建调用类
package com.zqw.webservice.demo;
/**
* //TODO
*
* @author zhuquanwen
* @vesion 1.0
* @date 2019/11/8 21:35
* @since jdk1.8
*/
public class Client {
public static void main(String[] args) {
HelloWorldImplService service = new HelloWorldImplService();
HelloWorldImpl helloWorld = service.getHelloWorldImplPort();
String msg = helloWorld.sayHelloWorld("张三");
System.out.println(msg);
}
}
运行就可以咯