webservice 超简单入门教程
!-- ???????? Title:WebService 超简单入门教程 ???????? Author:Lovingshu ???????? Date:2012/09/21 ???????? Description:Teachyou how to use WebService with java easily! --> 写在前面的话: ???????? 当两个人碰面后,产生了好感,如果需要得到双方的信息,那么双方的交流是必不可少的!应用程序也如此, ???????? 各个应用程序之间的交流就需要WebService来作为相互交流的桥梁! ? 项目目的: ???????? 程序A调用程序B中的方法C... ? ? 首先申明:本次需要采用的JDK版本为jdk1.6+,也就是要java6+才能看到效果,java5没试过...我认为,升级一下JDK版本比起安装什么 Axis以及导入一堆jar包和配置N多配置文件来说,java6的webservice无疑是简单的不能再简单! ? 废话少说少整点,开整: 1,建立一个项目名为Trans,web项目,普通java项目都可以!这里我们就以简单的java应用程序来作为示范吧! ???????? 1.1在建立一个方法属于com.shu.function.Function类: ? //别忘了引入webservice @WebService public class Function{ ? ???????? //该方法就是要暴露给其他应用程序调用的方法 ???????? publicString transWords(String words){ ?????????????????? Stringres=""; ?????????????????? for(charch : words.toCharArray()){ ??????????????????????????? res+="t"+ch+"t"; ?????????????????? } ?????????????????? returnres; ???????? } ? ???????? //这里我们使用main方法来发布我们的service ???????? publicvoid static main(String[] args){ ?????????????????? Endpoint.publish("http://localhost:9001/Service/Function",newFunction()); ?????????????????? System.out.println("PublishSuccess~"); ???????? } } ? 2.在打出"PublishSuccess~"后,说明我们消息发布成功,不成的话,注意:1.需要JDK1.6+,2.确定服务器端口没有被占用;成功后, 在浏览器地址栏输入:http://localhost:9001/Service/Function?wsdl就可以看到该service的详细信息! ? 3.建立另外一个项目:GiveMeWords ? 关键的来了,打开cmd输入以下命令:wsimport -s src的路径 -p 完整包名 -keep webservice的发布地址然后回车就OK了, 比如说: wsimport -s F:WorkBenchEclipseGiveMeWordssrc? -p com.shu.service -keephttp://localhost:9001/Service/Function?wsdl (如果wsimport命令失效,请检查是否把jdk配入环境变量!JAVA_HOME:JDK所在位置,CLASSPATH:%JAVA_HOME%libtools.jar) 回车后,会出现: ???????? parsingWSDL... ???????? generatingcode... ???????? compilingcode... 恭喜你,成功了,你可以刷新一下你的GiveMeWords项目后会在com.shu.service包下会有对应的WebService生成的文件! 然后调用如下: public void static main(String[] args){ ???????? Functionfu =new FunctionService().getFunctionPort(); ???????? Stringstr=fu.transWords("Let's Get Heck Out Of Here!"); ???????? //最后str就是在Trans项目下的transWords方法处理后的字符串咯! } ? 最后...怎么样,webservice不难吧,全靠jdk的升级呀! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |