Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 休息与休息_Java_Web Services_Rest_Jersey_Jax Rs - Fatal编程技术网

Java 休息与休息

Java 休息与休息,java,web-services,rest,jersey,jax-rs,Java,Web Services,Rest,Jersey,Jax Rs,我在高层次上(不是非常详尽地)研究了RESTfulWeb服务,编写了一些基于REST的Web服务 为了开始我在RESTful WS中的旅程,我阅读了在线文章(wiki、在线教程等),我了解到它是一种指定约束的体系结构样式,当应用于web服务时,会产生期望的属性,如性能、可伸缩性等。好的,这是这个概念的理论部分 使用JAX-RS的一个简单示例: @Path("/simple") public class SimpleRESTService { @GET @Path("/{para

我在高层次上(不是非常详尽地)研究了RESTfulWeb服务,编写了一些基于REST的Web服务

为了开始我在RESTful WS中的旅程,我阅读了在线文章(wiki、在线教程等),我了解到它是一种指定约束的体系结构样式,当应用于web服务时,会产生期望的属性,如性能、可伸缩性等。好的,这是这个概念的理论部分

使用
JAX-RS
的一个简单示例:

@Path("/simple")
public class SimpleRESTService {

    @GET
    @Path("/{param}")
    public Response getMsg(@PathParam("param") String message) {
        String output = "Jersey say : " + message;
        return Response.status(200).entity(output).build();
    }
}
我的疑问是:

如果REST是一种体系结构风格(并使用这些准则构建RESTful web服务),那么
JAX-RS
做什么?据我所知,REST只是架构风格而不是任何规范,JAX-RS与此有什么关系?我很难理解这两个实体之间的关系

谁能帮我用简单的话来理解这一点

用于RESTfulWeb服务的JavaAPI(JAX-RS)是一组API 开发者REST服务。JAX-RS是JavaEE6的一部分,并且 开发人员可以轻松地开发RESTWeb应用程序

您可以在此处阅读更多内容:

用于RESTfulWeb服务的JavaAPI(JAX-RS)是一组API 开发者REST服务。JAX-RS是JavaEE6的一部分,并且 开发人员可以轻松地开发RESTWeb应用程序


您可以在这里阅读更多内容:

REST确实是一种独立于应用层协议构建web服务的体系结构样式(也可以通过FTP或HTTP实现)

JAX-RS只是JavaEE的一个标准化API,您可以使用它轻松地在Java中实现RESTful服务。它是一个供开发人员卸下肩上负担的工具包,作为JavaEE的一部分,它在应用服务器(如WildFly开箱即用)中实现

但请注意,使用SpringWebMVC和SpringHateOAS模块在Spring等框架中创建REST服务是尽可能的

编辑:
尽管REST是一种定义良好的架构样式,但它(正如您所提到的)并不是一种规范,因此开发人员对它有很多模糊的地方

简而言之,它所说的就是“嘿,伙计,如果你用这种方式和这种方式使用通信协议(比如HTTP),那么改变和扩展对你来说将是非常方便的,而且你的服务的客户端与你交谈将是非常直接的”

JAX-RS使您能够使用动态部分(例如:/api/jediknights/{id},以便id可以是任何内容)定义服务端点,从而更容易以您(或您的客户机)希望的格式响应客户机,如XML或JSON。它提供了方便的包装器对象来包装您的响应主体以及状态代码、标题和许多其他方便的东西

然而,问题是:作为一名开发人员,您仍然有责任遵守REST样式所述的原则。JAX-RS并没有真正强制您执行任何操作

公平地说,您甚至可以通过只使用较低级别的ServletAPI来实现RESTful web服务。JAX-RS只是对您隐藏了不必要的细节,并将使您的生活更轻松


我希望它变得更清楚一点:)

REST确实是一种独立于应用层协议构建web服务的体系结构风格(也可以通过FTP或HTTP实现)

JAX-RS只是JavaEE的一个标准化API,您可以使用它轻松地在Java中实现RESTful服务。它是一个供开发人员卸下肩上负担的工具包,作为JavaEE的一部分,它在应用服务器(如WildFly开箱即用)中实现

但请注意,使用SpringWebMVC和SpringHateOAS模块在Spring等框架中创建REST服务是尽可能的

编辑:
尽管REST是一种定义良好的架构样式,但它(正如您所提到的)并不是一种规范,因此开发人员对它有很多模糊的地方

简而言之,它所说的就是“嘿,伙计,如果你用这种方式和这种方式使用通信协议(比如HTTP),那么改变和扩展对你来说将是非常方便的,而且你的服务的客户端与你交谈将是非常直接的”

JAX-RS使您能够使用动态部分(例如:/api/jediknights/{id},以便id可以是任何内容)定义服务端点,从而更容易以您(或您的客户机)希望的格式响应客户机,如XML或JSON。它提供了方便的包装器对象来包装您的响应主体以及状态代码、标题和许多其他方便的东西

然而,问题是:作为一名开发人员,您仍然有责任遵守REST样式所述的原则。JAX-RS并没有真正强制您执行任何操作

公平地说,您甚至可以通过只使用较低级别的ServletAPI来实现RESTful web服务。JAX-RS只是对您隐藏了不必要的细节,并将使您的生活更轻松


我希望它变得更清楚一点:)

谢谢你的回复。JAX-RS在RESTWS上下文中做什么?它们本身肯定不是RESTful WS实现。那么它们到底是什么呢?如果你能详细阐述一下你的回答,那将是非常有帮助的。谢谢你详细介绍你的回答,现在已经很清楚了:)。接受你的解释作为我问题的答案。非常感谢!谢谢你的回复。JAX-RS在RESTWS上下文中做什么?它们本身肯定不是RESTful WS实现。那么它们到底是什么呢?如果你能详细阐述一下你的回答,那将是非常有帮助的。谢谢你详细介绍你的回答,现在已经很清楚了:)。接受你的解释作为我问题的答案。非常感谢!