对webservice 的理解 以及示例
2016-07-29 19:06
357 查看
记录一下项目中发布webservice 的方式,以及我对webservice 这个技术的理解。
webservice是 基于 xml的,采用soap 协议,他实现了跨语言,跨平台性,应用十分广泛
当服务端发布webservice 时,将数据转为 xml 格式,变成标注的数据类型,xml 是什么平台和什么语言都可以解析的。
WebService 是在web 上实现的,所以是通过HTTP协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头,以说明 HTTP消息的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议。SOAP提供了标准的RPC方法来调用Web Service。
SOAP协议 = HTTP协议 + XML数据格式
实际上:webservice 就是相当于一个servlet 只是传输的数据格式不同,并且 与平台语言无关。他以xml 文件格式返回数据。
发布一个接口后就可以使用指定路径来 访问该接口 获取数据。
下面记录一下我项目中如何发布webservice的。
我项目中采用了cxf 发布,因为cxf 与spring 非常容易整合。(不懂得自己百度下发布java发布webservice的几种方式)
1.在配置文件中加入cxf servlet
<servlet-name>CXFService</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>2</load-on-startup>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>CXFService</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
2. 定义接口,并写好实现类。
@WebService
public interface IScoreWebService {
public String getScoreWebService(String params);
}
@Component
@WebService(serviceName = "scoreWebService", endpointInterface = "com.dji.ppqm.webservice.IScoreWebService")
public class ScoreWebService implements IScoreWebService{
public String getScoreWebService(String params) {
}
}
3.在spring 的配置文件中 发布webservice
<!-- WebService服务发布 -->
<jaxws:endpoint id="scoreWebServiceImpl"
implementor="com.dji.ppqm.webservice.impl.ScoreWebService" address="/getScore" />
<jaxws:endpoint id="verifyEmployeeWebServiceImpl"
implementor="com.dji.ppqm.webservice.impl.VerifyEmployeeWebService" address="/Verify" />
注意: xmlns:jaxws="http://cxf.apache.org/jaxws"
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"
引入cxf 的xsd 规范。
顺便提一下访问的路径 为
应用程序的根路径/services(为配置servlet的拦截路径)/scoreWebServiceImpl(发布webservice设置的id)?wsdl
webservice是 基于 xml的,采用soap 协议,他实现了跨语言,跨平台性,应用十分广泛
当服务端发布webservice 时,将数据转为 xml 格式,变成标注的数据类型,xml 是什么平台和什么语言都可以解析的。
WebService 是在web 上实现的,所以是通过HTTP协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头,以说明 HTTP消息的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议。SOAP提供了标准的RPC方法来调用Web Service。
SOAP协议 = HTTP协议 + XML数据格式
实际上:webservice 就是相当于一个servlet 只是传输的数据格式不同,并且 与平台语言无关。他以xml 文件格式返回数据。
发布一个接口后就可以使用指定路径来 访问该接口 获取数据。
下面记录一下我项目中如何发布webservice的。
我项目中采用了cxf 发布,因为cxf 与spring 非常容易整合。(不懂得自己百度下发布java发布webservice的几种方式)
1.在配置文件中加入cxf servlet
<servlet-name>CXFService</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>2</load-on-startup>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>CXFService</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
2. 定义接口,并写好实现类。
@WebService
public interface IScoreWebService {
public String getScoreWebService(String params);
}
@Component
@WebService(serviceName = "scoreWebService", endpointInterface = "com.dji.ppqm.webservice.IScoreWebService")
public class ScoreWebService implements IScoreWebService{
public String getScoreWebService(String params) {
}
}
3.在spring 的配置文件中 发布webservice
<!-- WebService服务发布 -->
<jaxws:endpoint id="scoreWebServiceImpl"
implementor="com.dji.ppqm.webservice.impl.ScoreWebService" address="/getScore" />
<jaxws:endpoint id="verifyEmployeeWebServiceImpl"
implementor="com.dji.ppqm.webservice.impl.VerifyEmployeeWebService" address="/Verify" />
注意: xmlns:jaxws="http://cxf.apache.org/jaxws"
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"
引入cxf 的xsd 规范。
顺便提一下访问的路径 为
应用程序的根路径/services(为配置servlet的拦截路径)/scoreWebServiceImpl(发布webservice设置的id)?wsdl
相关文章推荐
- Eclipse根据wsdl文件自动生成webservice client图解,以及调用示例,附测试项目
- 微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。
- 简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。
- 演示事件(Event)怎样使用以及怎样为用户控件添加一个事件(示例代码下载)
- 演示事件(Event)怎样使用以及怎样为用户控件添加一个事件(示例代码下载)
- QuickGuide for AJAX[简译AJAX快速指南]以及对现有WebService的扩展。
- Transact SQL 常用语句以及函数简易说明(含示例)
- 演示事件(Event)怎样使用以及怎样为用户控件添加一个事件(示例代码下载)
- 使用Log4j为项目配置日志输出应用详解以及示例演示的实现分析
- ThickBox学习之一 ThickBox介绍以及单图片显示示例
- DataGridView数据绑定以及导出Excel示例
- 用于测试C++/C程序员的基本编程技能、编程质量以及对C++/C的理解程度的一份考卷试题
- webservice学习笔记——理解篇
- 将VS2005的WEB程序 安装到其他电脑上 以及引用WebService 的大概步骤
- ASP.NET 2.0 AJAX中Webservice调用方法示例
- 在ASP.NET Atlas中调用Web Service——创建Mashup调用远端Web Service(基础知识以及简单示例)
- 构建WebService常用特性[含简单示例程序]
- Control Study->AdRotator广告控件显示自定义配置文件中广告以及与DataGrid控件结合使用显示图片(示例代码下载)
- 用java读写ini配置文件的原因以及实现 示例
- 将VS2005的WEB程序 安装到其他电脑上 以及引用WebService 的大概步骤