博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
webService笔记(2)---入门示例
阅读量:4087 次
发布时间:2019-05-25

本文共 1896 字,大约阅读时间需要 6 分钟。

该示例采用的是非框架技术实现webService,即采用wsimport 创建

语法为:wsimport -s "src目录" -p "生成类所在包名称" -keep "wsdl发布地址"

注:src目录地址不可包含空格

wsdl发布地址不要遗漏了 ?wsdl

一、创建服务端

1、创建【web Service Project】,命名为【HelloServerProject】,注意这里的web工程是web Service project

2、在src下新建包com.cn.server,然后在包下创建class类HelloServer

3、在类HelloService中编写供客户端调用的方法sayHello()

package com.cn.server;import javax.jws.WebService;import javax.xml.ws.Endpoint;@WebServicepublic class HelloServer {	/**	 * 供客户端调用的方法	 * @param name  传入的参数	 * @return String  返回结果	 * */	public String sayHello(String name){		return "my name is "+name;	}		public static void main(String[] args) {		Endpoint.publish("http://localhost:9001/Service/HelloServerProject", new HelloServer());		System.out.println("service success!");	}	}
注:使用@WebService将类HelloServer注解为webService类

使用Endpoint发布webService

4、测试结果

测试地址:http://localhost:9001/Service/HelloServerProject?wsdl

地址栏Service为固定的,HelloServiceProject为项目名称, ?wsdl为固定的页面

如果进入wsdl页面,则说明发布成功

-
-
-
-
-
-
-
-
-
-
-
-
-

二、生成客户端

1、创建【web Service Project】, 命名为【HelloClientProject】

2、打开cmd窗口,执行如下命令:

1)、打开cmd窗口

2)、执行命令生成类

wsimport -s G:\\workPlace1\\HelloClientProject\\src -p com.cn.client -keep http://localhost:9001/Service/HelloServerProject?wsdl

3、刷新项目,检查生成的类

三、测试

1、在【HelloClientProject】的src下新建包com.cn.test,然后在该包下创建class类HelloServiceTest

package com.cn.test;public class HelloServerTest {}

2、在HelloServiceTest类下编写测试方法,调用服务端方法

package com.cn.test;import com.cn.client.HelloServer;import com.cn.client.HelloServerService;public class HelloServerTest {	public static void main(String[] args) {		//初始化对象		HelloServer helloServer=new HelloServerService().getHelloServerPort();		//调用对象的方法		String name=helloServer.sayHello("张三");		System.out.println(name);	}}

你可能感兴趣的文章
数据库事务
查看>>
JavaScript基础1:JavaScript 错误 - Throw、Try 和 Catch
查看>>
SQL基础总结——20150730
查看>>
SQL join
查看>>
JavaScript实现页面无刷新让时间走动
查看>>
CSS实例:Tab选项卡效果
查看>>
前端设计之特效表单
查看>>
前端设计之CSS布局:上中下三栏自适应高度CSS布局
查看>>
Java的时间操作玩法实例若干
查看>>
JavaScript:时间日期格式验证大全
查看>>
pinyin4j:拼音与汉字的转换实例
查看>>
XML工具代码:SAX从String字符串XML内获取指定节点或属性的值
查看>>
时间日期:获取两个日期相差几天
查看>>
责任链模式 Chain of Responsibility
查看>>
高并发与大数据解决方案概述
查看>>
解决SimpleDateFormat线程安全问题NumberFormatException: multiple points
查看>>
MySQL数据库存储引擎简介
查看>>
处理Maven本地仓库.lastUpdated文件
查看>>
Kafka | 请求是怎么被处理的?
查看>>
Java并发编程1-线程池
查看>>