对webservice 的理解 以及示例


记录一下项目中发布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





  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值