低价网站空间做网站zwnet
低价网站空间,做网站zwnet,网页制作是建网站的第几步,销售公司简介模板在当今世界#xff0c;数据扮演着非常重要的角色。 如此众多的应用程序将各种类型的数据用于不同的操作#xff0c;所以最重要的方面是应用程序之间的通信。 当应用程序可以通信时#xff0c;它们之间的数据共享变得容易。 就像在亚洲运行的应用程序向在欧洲运行的应用程序… 在当今世界数据扮演着非常重要的角色。 如此众多的应用程序将各种类型的数据用于不同的操作所以最重要的方面是应用程序之间的通信。 当应用程序可以通信时它们之间的数据共享变得容易。 就像在亚洲运行的应用程序向在欧洲运行的应用程序提供数据一样反之亦然。 在美国托管的Facebook服务器如何在亚洲提供Facebook服务 在世界不同地区托管的众多网站中如何有可能使用Google帐户验证选项 上述问题的答案是Web服务。 如下所述有两种类型的Web服务。 REST Web服务 SOAP Web服务 让我们详细讨论REST Web服务。 1.简介 1.1 REST REST是基于Web标准和HTTP协议的数据传输的体系结构原理。 在REST中有使用REST服务器托管的资源。 每个资源都有一个称为URI的唯一ID可以使用REST客户端进行修改和访问。 REST允许以XMLJSONText等不同格式表示资源。 1.2 HTTP操作 由于REST支持HTTP协议因此它允许对资源进行以下操作。 GET – GET请求用于访问资源它以所需格式表示资源。 POST – POST请求用于更新现有资源。 它也用于创建新资源。 它支持各种格式的资源表示。 PUT – PUT请求用于通过完全替换现有资源来更新资源。 根据定义PUT请求是幂等的。 DELETE – DELETE请求用于删除资源。 在REST Web服务中我们还有以下两种不同类型的REST Web服务。 RESTful Web服务 RESTless Web服务 作为教程的一部分我们将详细讨论RESTful Web服务。 1.3 RESTful Web服务和JAX-RS RESTful Web服务是遵循基于REST的体系结构的服务主要用于网站。 它简单快速因为它不受严格的限制并且消耗的带宽更少。 Java提出了用于根据REST体系结构创建Web服务的编程规范。 该API规范的名称是JAX-RS它表示RESTful Web服务的Java API。 JAX-RS是Java SE 5的一部分并成为Java EE 6中Java家族的永久成员。JAX-RS的当前版本是2.1版于2017年9月发布。 2.注释 让我们讨论一下JAX-RS支持的不同注释和规范。 Path -告诉资源类或方法的相对路径。 GET -HTTP Get请求用于获取资源。 PUT -HTTP PUT请求用于创建资源。 POST -HTTP POST请求用于创建或更新资源。 DELETE -HTTP DELETE请求用于删除资源。 HEAD -这是HTTP HEAD请求用于获取方法可用性的状态。 Produces -告诉您从Web服务生成的HTTP响应的类型。 例如APPLICATION / XMLAPPLICATION / JSON等。 Consumes -这告诉Web服务可以处理的HTTP请求的类型。 例如APPLICATION / XML可用于以XML格式发送请求。 PathParam -它将传递给方法的参数绑定到路径中的值。 QueryParam -它将传递给方法的参数绑定到路径中的查询参数。 HeaderParam -这HeaderParam传递给方法的参数绑定到HTTP标头。 DefaultValue -它将为传递给方法的参数分配默认值。 Context -它是资源的上下文。 例如将HTTPRequest作为上下文。 3.球衣 3.1什么是球衣 Jersey是一个开放源代码框架用于构建RESTful Web服务。 它不仅仅是JAX-RS的实现。 Jersey还提供了自己的API以使Web服务的创建更加简单和有用。 它还提供了许多SPI以根据开发人员的需求扩展框架。 3.2球衣的组成 泽西岛充满了很多功能和组件。 但是泽西岛有四个主要组成部分。 它们如下。 核心服务器-用于构建RESTful Web服务。 这些组件包括jersey-corejersey-server和jsr311-api。 核心客户端-为了与Web服务交互我们需要一个客户端在Web服务之间进行通信。 这些组件由jersey-client组成。 JAXB支持 -Jersey提供对JAXB的支持。 它使XML到对象的转换变得容易。 执行此支持的组件是jersey-server。 JSON支持 Jersey提供对JAXB的支持。 它使JSON到对象的转换变得容易。 执行此支持的组件是jersey-server。 与Spring和Guice框架轻松集成。 这些是Jersey的一些主要组件和功能。 现在让我们讨论如何安装Jersey。 3.3球衣安装 有两种方法可以在程序中安装Jersey。 我们可以使用Gradle也可以从jersey网站执行直接安装。 让我们来看看这两种方式。 3.3.1摇篮 如果我们使用Gradle则必须在项目依赖项部分中添加以下行。 compile org.glassfish.jersey.containers:jersey-container-servlet-core:2.26 请注意项目名称从2.26版本开始已更改。 所有早期版本的名称都只有jersey-container-servlet 。 3.3.2从Jersey网站安装 要从其网站安装Jersey我们可以在网站上下载该软件包其中包含除第三方依赖项之外的所有依赖项。 您可以从此链接下载软件包。 下载软件包后解压缩zip文件并将所有jar粘贴到程序的WEB-INF/lib中。 这就是您现在准备使用球衣的全部。 4.工具与技术 让我们看看用于构建程序的技术和工具。 Eclipse Oxygen.2发布4.7.2 Java –版本9.0.4 摇篮– 4.6 JAX-RS 2.1 泽西岛2.26 Tomcat 9.0 5.项目结构 我们的项目结构如下图所示。 JAX-RS项目的项目结构 上面显示的项目结构用于JAX-RS的计划实施可以从Jersey网站下载库。 对于带有build.gradle和pom.xml的项目项目结构将略有不同。 6.方案目标 作为程序的一部分我们将尝试使用Jersey创建一个简单的Web服务。 另外我们将尝试了解创建Web服务所需完成的配置和设置。 6.1罐子 以下是将成为文件夹WEB-INF/lib的Jar的列表。 Jars作为JAX-RS项目构建的一部分 有两种方法可以将jar添加为项目的一部分。 两种方式都在下面提到。 使用构建文件添加Jar可以通过使用jar和版本作为依赖项使用build.gradle或pom.xml之类的构建文件将jar添加到项目中。 从Jersey网站下载上面提到的所有jar都是Jersey软件包的一部分可以下载并复制粘贴到WEB-INF / lib。 下载Jars的链接 。 5.2 JAX-RS的配置 为了使用JAX-RS我们必须将Jersey注册为REST请求的调度程序servlet。 我们必须将web.xml修改为以下几行。 泽西岛的Web.xml作为分派器servlet ?xml version 1.0 encoding UTF-8?
web-app xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlnshttp://java.sun.com/xml/ns/javaee xmlns:webhttp://java.sun.com/xml/ns/javaee/web-app_2_5.xsdxsi:schemaLocationhttp://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsdidWebApp_ID version2.5display-nameJAX-RS Application Demo/display-nameservletservlet-namejersey-servlet/servlet-nameservlet-classorg.glassfish.jersey.servlet.ServletContainer/servlet-classinit-paramparam-namejersey.config.server.provider.packages/param-nameparam-valuecom.tutorial/param-value/init-param/servlet servlet-mappingservlet-namejersey-servlet/servlet-nameurl-pattern/rest/*/url-pattern/servlet-mapping
/web-app web.xml有不同的标记用于不同的目的。 display-name仅用于显示目的。 init-param标签用于初始化。 我们使用了一个参数jersey.config.server.provider.packages该参数定义了Jersey将针对服务类查找的软件包。 此处定义的包应包含服务类。 url-patter此标记用于定义URL模式。 默认情况下URL的开头将是项目名称后跟在此标记处定义的url-pattern。 6.3服务等级 服务类负责处理请求。 调度程序Servlet在我们的示例中为Jersey接收到请求后该请求将根据URL路径传输到服务类。 服务类名称为HelloWorld.java 项目服务等级 package com.tutorial;import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.Response;Path(/hi)
public class HelloWorld
{GETPath(/{name})public Response getMessage(PathParam(name) String name){String outMsg Hello name !;return Response.status(200).entity(outMsg).build();}} 在上面的代码Path针对URL路径定义。 因此URL将包含项目名称定义为web.xml一部分的url模式以及Path注释支持的属性。 该请求将由调度程序servlet转移到此类。 GET定义了HTTP方法的类型。 如果它包含带有这些{}括号的Path参数则这些参数称为PathParam 。 在我们的情况下 name是路径参数。 您可以在服务级别以及方法级别定义路径。 6.4运行程序 为了运行该程序需要一个Web服务器来运行Web服务。 对于我们的程序我们使用了Apache Tomcat。 让我们创建一个war文件并将war部署在tomcat服务器上。 另外我们可以将tomcat服务器与Eclipse集成在一起。 一旦Tomcat服务器与Eclipse集成在一起并且在服务器上部署了项目战我们将获得以下屏幕。 Tomcat与Eclipse以及JAX-RS项目集成在一起 现在让我们启动tomcat服务器。 tomcat服务器启动后我们将在浏览器中键入以下URL。 http// localhost8080 / JaxRsTutorial / rest / hi / Anand 请注意URL首先包含项目名称然后包含作为web.xml一部分提及的url模式然后是服务路径最后是路径参数即名称。 以下屏幕将出现在浏览器中。 浏览器上的Web服务结果 7.下载Eclipse项目 这是使用Jersey的JAX-RS教程。 您可以在此处下载此示例的完整源代码 JaxRsTutorial.zip 翻译自: https://www.javacodegeeks.com/2018/04/jax-rs-tutorial-with-jersey-for-restful-web-services.html
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/90290.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!