【WebService】快速创建webservice实例
发布时间:2020-12-16 21:36:51 所属栏目:安全 来源:网络整理
导读:快速创建webservice实例步骤: 1、建立IMyService接口类: @WebService () public interface IMyService { /** * 加法 * @param a * @param b * @return */ @WebResult (name= "addResult" ) public int add (@ WebParam (name= "a" ) int a, @WebParam (nam
快速创建webservice实例步骤: @WebService()
public interface IMyService {
/** * 加法 * @param a * @param b * @return */
@WebResult(name="addResult")
public int add(@WebParam(name="a")int a,@WebParam(name="b")int b);
/** * 减法 * @param a * @param b * @return */
@WebResult(name="minusResult")
public int minus(@WebParam(name="a")int a,@WebParam(name="b")int b);
}
2、建实现类IMyServiceImpl: @WebService(endpointInterface="org.zttc.service.IMyService")
public class MyServiceImpl implements IMyService {
/** * 加法 * @param a * @param b * @return */
@Override
public int add(int a,int b) {
System.out.println(a+"+"+b+"="+(a+b));
return a+b;
}
/** * 减法 * @param a * @param b * @return */
@Override
public int minus(int a,int b) {
System.out.println(a+"-"+b+"="+(a-b));
return a-b;
}
}
3、MyServer类:测试是否部署成功 /** * server端 * @author 王红伟 * */
public class MyServer {
public static void main(String[] args) {
String address = "http://localhost:8888/ns";
//发布地址
Endpoint.publish(address,new MyServiceImpl());
}
}
启动MyServer,访问http://localhost:8888/ns url后加?wsdl如:http://localhost:8888/ns?wsdl 结果: 看到这里,证明我们部署成功了。 4、写TestClient测试类:部署成功后,我们就可以调用了 public class TestClient {
public static void main(String[] args) {
try {
//创建访问wsdl服务地址的url
URL url = new URL("http://localhost:8888/ns?wsdl");
//通过Qname指明服务的具体信息
//MyServiceImplService对应wsdl页的本地提供的webservice的名称
QName sname = new QName("http://service.zttc.org/","MyServiceImplService");
//创建服务
Service service = Service.create(url,sname);
//实现接口
IMyService ms = service.getPort(IMyService.class);
System.out.println(ms.add(12,33));
//以上服务有问题,依然依赖于IMyServie接口
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
}
运行TestClient,最终结果为45 //实现接口
IMyService ms = service.getPort(IMyService.class);
这句代码依赖外部接口,wsdl可能是.net开发的,可能是其他语言开发的,依赖接口不能跨平台。所以引出了wsimport的使用。 关于webservice的实例就到这里,下篇博客将为您展示wsimport的使用,欢迎您的访问。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |