栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何用Java编写有效的Web服务

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何用Java编写有效的Web服务

确实,了解Web服务有点困难。在维基百科页面是体面的,但还缺少一些元素。

我已将此答案标记为社区Wiki,请随时进行更新或更正。这只是一个基础。

term肿的术语:

首先,术语 Web服务
用于指许多事物。尽管许多人使用它来指代基于SOAP的Web服务,但该术语可以用来表示通过Web界面提供的任何服务;这是造成混乱的根源。

实施和设计风格:

  • 基于 SOAP的-SOAP仍然是Web服务的实际标准。SOAP是HTTP之上的协议,用于描述消息和异常的交换。通过后来添加的所有WS- *标准,SOAP从简单的东西发展到了非常复杂的东西。最重要的是:WS-策略,WS-安全性,WS-寻址,WS-Transaction。另一个重要的规范是大型邮件的MTOM。
  • RESTful- 术语 RESTful 与服务无状态且所有相关信息均作为参数传递这一事实有关。也代替使用如SOAP的协议,普通HTTP 动词 被使用,例如
    Get
    Put
    Delete
    Update
  • 无状态 -WS通常是无状态的。处理的业务有时依赖于所谓的关联标识符(带有WS-Addressing),该标识符用于将请求和响应一起匹配;这与将会话标识符存储在cookie中一样,因为HTTP是无状态的。
  • 有状态的 -有一些建议使用有状态的WS,但是我对此并不了解。

实施和技术栈:

  • Servlet- 实现WS的最底层方法:您基本上可以自行解析请求并吐出HTTP响应。
  • EJB- 从EJB3开始,EJB可以很容易地作为Web服务公开。当然,需要一个EJB容器。
  • Apache Axis- 曾经是一种流行的技术堆栈,现在正在下降。
  • Apache CXF- 另一个流行的选择。
  • JBossWS- 另一个流行的选择。
  • JAX-WS -Sun的官方Web服务堆栈,非常好。到目前为止,我知道,它取代了 JAX-RPC,后者已简单地重命名为JAX-WS。

相关概念和行话:

  • WSDL- 如果是基于SOAP的WS,则定义Web服务的协定/接口。
  • 合同优先 -指的是一项技术能够支持任何预先提供的WSDL的事实。与将基于Web服务的实现生成WSDL的实现技术相反,在这种情况下,不能总是根据需要自定义WSDL
  • 概要文件 -为了简化这种混乱情况,他们引入了概要文件,这些文件是需要互操作性支持的一组相关规范/功能。主要的是WS-I基本概要文件。
  • UDDI和发现 -似乎有些人认为Web服务将在公共寄存器中发布,以便潜在的消费者可以发现它。我认为这一愿景没有取得太大进展。


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/428930.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号