webservice 分为服务端,客户端咱先说服务端
新建一个java object项目(就是普通项目)
项目下新建一个Helloworld的类
Helloworld.java源码
package cdo.demo.webservice;
import javax.jws.WebService;
@WebService
public class Helloworld {
public String helloworld(){
return "hello the world";
}
public String sayhello(String name){
return "hello "+name;
}
}
注:HelloWorld是一个普通类,只是在类的前面加了注解@WebService
然后写启动时用的main方法
main.java 源码
package cdo.demo.webservice;
import javax.xml.ws.Endpoint;
public class Main {
public static void main(String[] args) {
Endpoint.publish("http://localhost:9090/HelloWorld", new Helloworld());
}
}
注:http://localhost:9090/HelloWorld是发布服务地址,其中new HelloWorld()是服务类。
运行main函数,在浏览器中输入http://localhost:9090/HelloWorld?wsdl出现如下图,则服务完成
服务器完成后就是客户端
新建一个java object 项目
进入dos窗口(百度知道怎么进入,不会去问她)
进入项目下的src(不会的可以先进入一个临时文件里,然后复制到项目src下,要是这也不会我没办法了,只能说你首先要成为一个菜鸟级开发人员,而不是一个只是会打开IDE的普通人)
执行wsimport -keep http://localhost:9090/HelloWorld?wsdl
如图:(注,这解析的是服务端返回的那个xml文件,所以执行这个命令的时候服务端必须是启动着的,否则会报错)
回到IDE刷新一下项目下的src,就会更新刚才生成的类,如图:
新建一个com.demo.webservice.client包
包下建一个Main.java的类作为主类
实现主函数
package com.demo.webservice.client;
import cdo.demo.webservice.HelloworldService;
public class Main {
public static void main(String[] args) {
HelloworldService service = new HelloworldService();
System.out.println(service.getHelloworldPort().helloworld());
System.out.println(service.getHelloworldPort().sayhello("王先森"));
}
}
运行结果:
OK完成,收工吃饭