关于 Web Service 学习
来源:互联网 发布:java简单超市管理系统 编辑:程序博客网 时间:2024/04/30 11:40
先介绍一下Web Service ,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计,通过网络进行调用,来执行远程系统的请求服务。能够在不同计算机的不同语言编写的应用程序系统中,通过网络通讯实现函数的方法调用。
Web Service = SOAP + HTTP + WDSL; SOAP 是 web service 的主体,是一种简单对象访问协议,用于网络上的不同平台上,不同语言的应用程序间通讯,一条SOAP消息就是一个普通的xml文档,协议简单的理解就是将消息进行转码类似加密,SOAP 已经成为一种标准 所以被使用。WSDL文档就是不同平台通讯所存入的消息,其中包含了,该消息的namespace,schemaLocation,message,type 等内容,是Web Service 的描述语言。
在构建Web Service 服务程序时一般都是希望其他的客户端对其方法或应用的调用,所以Web Service 会暴露一些应用程序的数据,让其他不同平台的客户端进行重用应用程序。在这之间,该方法会被写入WDSL 文档格式下 在SOAP 的通讯协议基础上进行跨平台的传输, 客户端得到WSDL 文档后可以将该文档转成自己喜欢的任意语言从而实现对应用程序的调用。 以上仅是一些浅显的理解。
对于初学者还是关心如何使用操作的,然后再回头学得时候可能思路会比较明了。
首先创建一个简单的工程 Dynamic Web project + apache tomcat 7.0 +jdk 1.7.0_65 ;
new 一个接口, 以及一个简单的 抽象方法。 接口前加@WebService import javax.jws.WebService;
new 一个实现方法实现该接口中的抽象方法, 类前加 @WebService import javax.jws.WebService;
然后就是配置web.xml 文件 添加 一个servlet name 自己取, servlet-class : org.apache.cxf.transport.servlet.CXFServlet, url :/*
在WEB-INF 下创建一个 cxf-servlet.xml 文件 添加一个 xmlns:jaxws = "http://cxf.apache.org/jaxws" xsi:schemaLocation="http://cxf.apache.org/jaxwshttp://cxf.apache,org/schemas/jaxws.xsd"
<import resource="classpath:META-INF/cxf/cxf.xml"/>
<import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
<jaxws:endpoint id="自己取" implementor="实现类包路径" address=" / 接口类名"/>
当然还要导入cxf 相关jar 包。
cxf -core-3.0.2.jar
cxf-rt-databinding-jaxb-3.0.2.jar
cxf-rt-bindings-soap-3.0.2.jar
cxf-rt-frontend-jaxws-3.0.2.jar
cxf-rt-frontend-simple-3.0.2.jar
cxf-rt-transports-http-3.0.2.jar
cxf-rt-wsdl-3.0.2.jar
还有整合的 spring jar 包
spring-aop-3.2.6.RES.jar
spring-beans-3.2.6.RELEASE.jar
spring-context-3.2.6.RELEASE.jar
spring-expression-3.2.6.RELEASE.jar
spring-web-3.2.6.RELEASE.jar
还有相关关联 jar 包
commons-logging.jar
stax2-api-3.14.jar
woodstox-core-asl-4.4.1.jar
wsdl4j.1.6.3.jar
xmlschema-core-2.1.0.jar
关于jar 包 可以上官网上下载," 你需要的jar包名(仅apache) .apache.org " 还有一个方法, 就是Maven 项目, Spring ,Apache 官网都有公开的jar 包 Maven 仓库
创建一个Maven 项目, 在pom.xml 文件中写上你需要的jar 包 就会下载到你的本地了。
以上建好简单项目后,添加到应用服务器中, tomcat中 运行。 在浏览器上输入你的 url http://localhost:8080/(你的项目名)
点击 WSDL 就是所获得的WSDL 文档, 以上操作 其实IDE 会有一些 插件工具帮助实现。 例如Eclipse 中 Axis2 和 CXF 2.x
那么得到WSDL 文件怎样转成自己喜欢的语言呢, 在java 中 jdk bin 目录中有个工具就可以 将WSDL 文件转成java 文件,
打开jdk bin 找到 wsimport.exe java_home 配置好, 打开运行 cmd 输入该wsimport 回车,就可以看到该工具 许多命令
如果不出现 提示未找到该命令。 先确保java_home配置好。 然后打开cmd 输入
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_65 (jdk 安装目录)
set path=%JAVA_HOME%\bin;
再次输入 wsimport 一般都可以成功了, 不行重启电脑( )
常用到的wsimport 命令有
-keep:是否生成java源文件
-d:指定输出目录
-s:指定源代码输出目录
-p:以package的形式生成文件
-verbose:在控制台显示输出信息
你可以 直接在cmd 中输入wsimport -d d: -keep -verbose http://localhost:8080/(项目)/(方法)?wsdl
在D盘根目录下就可以看到 生成的 .java 和 .class文件,当然工具方法不只有一种。
目前学习到这么多,欢迎指正。
- 关于 Web Service 学习
- 关于Web Service
- 关于web service
- 关于Web Service
- 关于 web service 详解
- 关于Web Service原理
- 关于REST web service
- 关于web service
- Web service学习笔记
- Web Service学习笔记
- Web Service学习
- Web Service学习[转载]
- web service学习笔记
- Web Service学习
- Web Service 学习进行曲
- Web Service学习
- Web service学习笔记
- Web Service学习
- Android中的事件机制
- 智能手机音频系统
- Singleton模式——对象创建型模式
- htmlparser 基础 网页拔取
- 关于iOS app之间相互调用
- 关于 Web Service 学习
- 基于视频的车辆识别技术
- 打log
- 卢布危机对中国四大启示
- Swift之状态栏操作
- APPCON 电池供电433M 470M无线模块, 电池工作超10年
- Bootstrap 自助法
- iOS与js交互总结
- Sublime Text代码编辑器