JAX-RS示例jersey

本文概述

  • JAX-RS服务器代码
  • JAX-RS客户端代码
我们可以通过jersey实现创建JAX-RS示例。为此, 你需要加载jersey jar文件或使用Maven框架。
在此示例中, 我们将球衣jar文件用于JAX-RS的球衣示例。
单击我下载jersey jar文件。
为hello world JAX-RS示例创建了4个文件:
  1. Hello.java
  2. web.xml
  3. index.html
  4. HelloWorldClient.java
前三个文件是为服务器端创建的, 一个应用程序是为客户端创建的。
JAX-RS服务器代码 文件:Hello.java
package com.srcmini.rest; import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; @Path("/hello") public class Hello { // This method is called if HTML and XML is not requested @GET @Produces(MediaType.TEXT_PLAIN) public String sayPlainTextHello() { return "Hello Jersey Plain"; } // This method is called if XML is requested @GET @Produces(MediaType.TEXT_XML) public String sayXMLHello() { return "< ?xml version=\"1.0\"?> " + "< hello> Hello Jersey" + "< /hello> "; }// This method is called if HTML is requested @GET @Produces(MediaType.TEXT_HTML) public String sayHtmlHello() { return "< html> " + "< title> " + "Hello Jersey" + "< /title> " + "< body> < h1> " + "Hello Jersey HTML" + "< /h1> < /body> " + "< /html> "; } }

文件:web.xml
< ?xml version="1.0" encoding="UTF-8"?> < web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> < servlet> < servlet-name> Jersey REST Service< /servlet-name> < servlet-class> org.glassfish.jersey.servlet.ServletContainer< /servlet-class> < init-param> < param-name> jersey.config.server.provider.packages< /param-name> < param-value> com.srcmini.rest< /param-value> < /init-param> < load-on-startup> 1< /load-on-startup> < /servlet> < servlet-mapping> < servlet-name> Jersey REST Service< /servlet-name> < url-pattern> /rest/*< /url-pattern> < /servlet-mapping> < /web-app>

档案:index.html
< a href="http://www.srcmini.com/rest/hello"> Click Here< /a>

现在, 在服务器上运行此应用程序。在这里, 我们在端口4444上使用Tomcat服务器。项目名称为restfuljersey。
运行项目后, 你将看到以下输出:
JAX-RS示例jersey

文章图片
JAX-RS客户端代码 ClientTest.java文件在服务器应用程序内部创建。但是, 你也可以通过具有服务接口和jersey jar文件的其他应用程序来运行客户端代码。
文件:ClientTest.java
package com.srcmini.restclient; import java.net.URI; import javax.ws.rs.client.Client; import javax.ws.rs.client.ClientBuilder; import javax.ws.rs.client.WebTarget; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.UriBuilder; import org.glassfish.jersey.client.ClientConfig; public class ClientTest { public static void main(String[] args) { ClientConfig config = new ClientConfig(); Client client = ClientBuilder.newClient(config); WebTarget target = client.target(getBaseURI()); //Now printing the server code of different media type System.out.println(target.path("rest").path("hello").request().accept(MediaType.TEXT_PLAIN).get(String.class)); System.out.println(target.path("rest").path("hello").request().accept(MediaType.TEXT_XML).get(String.class)); System.out.println(target.path("rest").path("hello").request().accept(MediaType.TEXT_HTML).get(String.class)); } private static URI getBaseURI() { //here server is running on 4444 port number and project name is restfuljersey return UriBuilder.fromUri("http://localhost:4444/restfuljersey").build(); } }

输出:
Hello Jersey Plain < ?xml version="1.0"?> < hello> Hello Jersey< /hello> < html> < title> Hello Jersey< /title> < body> < h1> Hello Jersey HTML< /h1> < /body> < /html>

【JAX-RS示例jersey】单击我以下载不带球衣jar文件的Eclipse使用JAX-RS示例。

    推荐阅读