• 【译文】Web Service 众所周知的问题


    1. 什么是web service

    Web Service是一种网络程序间的通信方式,它允许开发者用API方式暴露自己的业务逻辑功能,这样,其他开发者可以使用它

    2. Web Service的特性

    互操作性、可重用性、松耦合、可扩展

    3. Web Service不同的类型

      SOAP和RESTful web service

    4. SOAP 是什么?

    SOAP是简单对象访问协议,它是一种用XML格式请求和响应的交换信息的协议,于HTTP等协议之上。

    5. SOAP的三大组件

    简单对象访问协议 - SOAP

    Web服务描述语言 - WSDL

    统一描述、发现和集成 - UDDI

    6. 什么是WSDL

    它是一个XML格式的文件,描述了实现Web服务的技术细节,URL、端口、方法名和参数以及数据类型,通过WSDL你可以了解到以下的细节:

    • Port / Endpoint – URL of the web service
    •     Input message format
    •     Output message format
    •     Security protocol that needs to be followed
    •     Which protocol the web service uses

    7. 什么是UDDI

    它是一个目录服务,Web服务提供商可以使用它来注册他们的服务,使得他们的服务可以被发现。 

    8. 什么是JAX-WS

    它是基于XML的Web Service的Java标准API,用来创建SOAP类型的Web服务

    9. JAX-WS重要注解

    • @WebService
    • @WebMethod
    • @SOAPBinding

    10. 针对SOAP类型而言, endpoint是指什么?

    是一个URL,其他应用可以访问它。

    11. 针对SOAP,如何访问到WSDL

    将 ?wsdl 添加到Web 服务的endpoint url后即可

    http://localhost:8080/WS/HelloWorld?wsdl

    12. wsimport 是什么?

    是一个工具,可以将WSDL生成java类,要求JDK6以上

    13. sun-jaxws.xml文件是什么

    这个文件提供了JAX-WS Web服务的endpoints详细内容,这些JAX-WS Web服务部署在Tomcat中,此文件一般在WEB-INF/ 目录里面,内容类似如下:

    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <endpoints xmlns="http://java.sun.com/xml/ns/jax-ws/ri/runtime" version="2.0">  
    3.   <endpoint  
    4.      name="HelloWorldWS"  
    5.      implementation="org.arpit.javapostsforlearning.webservice.HelloWorldImpl"  
    6.      url-pattern="/HelloWorldWS"/>  
    7. </endpoints>   

    14. 什么是Restful Web服务

    在Web服务领域,REpresentational State Transfer (REST) 是一个无状态的客户端-服务器架构,在这种风格上,Web服务被认为是一种资源,且可以通过URI唯一标记。Web服务客户端使用URI来访问它。

    15. Restful Web服务可以用哪些HTTP方法

    GET, POST, PUT ,DELETE, HEAD and OPTIONS

    16. 什么是JAX-RS

    RESTful Web Services 的JAVA标准API,用来开发REST风格的服务,它是JAVA EE6的一部分。这使得开发者很容易开发REST风格的Web应用

    17. 用来创建REST Web服务的重要的注解

    以下列出比较重要的,详细查看官方文档:

    @Path : 放到类或者方法前,映射URI到类或者方法
    @GET,@POST,@PUT,@DELETE  : 限制URI访问的HTTP方法
    @Produces(MediaType.TEXT_XML [, more-types ]): 定义该方法返回的MIME类型
    @PathParam: 用来从URL中注入值到方法参数中
    @Consumes(MediaType.TEXT_XML) : 方法使用的MIME类型

    18. 测试工具

    对于SOAP:

      soapui

    对于rest:

      浏览器扩展即可,例如谷歌浏览器的DHC客户端

    19. 如何选择?

    更快的开发速度? 选择REST

    不知道访问的客户端? 选择REST

    支持更多的格式? 选择REST

    20. SOAP和REST 之间的区别


    Read more at http://www.java2blog.com/2013/04/restful-web-service-tutorial.html#JmjvwTWX5wuBUAAo.99

  • 相关阅读:
    Maven安装
    (字符串哈希表)找到字符串中不重复出现字符的最长子串长度
    (动态规划)给定三角形,找到从上到下的最小路径总和
    (链表)删除链表的重复元素
    (树)判断二叉树是否为BST
    (动态规划)机器人走迷宫问题
    (数组)Largest Rectangle in Histogram(栈解问题)
    (树)每一层节点的右指针问题(层次遍历)
    (字符串)count and say
    (贪心)加油站绕圈问题
  • 原文地址:https://www.cnblogs.com/pengyusong/p/6215226.html
Copyright © 2020-2023  润新知