Java Web Service实践
Web Service直接翻译就是网络服务。
主要为了解决各种语言,各种系统之间不兼容,通过SOAP(简单对象访问协议)实现互联互通。
其核心就是这个SOAP,通过该协议将传递的数据格式确定,使得各个系统能够通信。
@WebService 表明这是一个用来提供服务的类
@WebMethod 用来表示doSth方法是将要暴露的方法
@WebParam 表示调用该服务需要提供的参数
@WebResult 表示将要返回的结果的类型
虽然我们写的东西不多,但是后端却有大量的理论和过程,并产生很多东西。对应用者来说,不需要理解太深刻。先学会如何熟练使用,等到有需要的时候,可以继续进行理论研究,节约时间。
写一个实现类实现我们刚才写的接口,并提供具体的返回。在注释中指定实现的服务接口名。
写一个类启动我们的服务。
指定启动服务的地址端口"127.0.0.1:13579",提供服务的名称"doer"。
启动后我们就可以来生成使用这个服务的客户端了。我们使用JDK提供的wsimport命令来生成客户端。
如果命令敲错了,可能会有问题。本文最后我会把我遇到的问题贴出来,可以让大家少走点弯路。
备注:如果你没有吧Java的bin目录添加到环境变量path里边,需要进入到bin目录后执行这个命令。
生成后可以看到下面的文件列表。
然后我们来写个客户端调用的例子来看看我们的服务是否成功了。
蓝色的部分是比较固定的取得服务接口的方法,红色的IDoer是我们声明的服务接口,doSth是我们调用声明的方法,并传递参数。
结果如下:
学习是两件事,学和习。学只是明白了理论,习是指练习。我之所以不把代码直接贴出来,是为了看到这篇文章,并想要学会的人能够通过自己敲代码去练习。只学的人,和学习的人之间的差距是很大的,而且是对个人提升最大的部分。
生成客户端代码的时候碰到了两个错误。
1,忘记输入?wsdl
2, 服务没有启动。
有其他问题的朋友可以发出来大家一起讨论一下。不懂的尽管提问,我会的一定都告诉你,如果是我不会的,我也找个会的高人来告诉你。