2.Jersey

什么是Jersey

  Jersey是JAX-RS标准的参考实现,是Java领域中开发REST式Web服务的"正统"工具。Jersey项目是GlassFish项目的一个子项目。

Jersey官方地址

  https://jersey.java.net/         英语比较好的同学可以到官网直接学习.

Jersey的七大模块

  •   核心模块
  •   容器模块
  •   连接器模块
  •   Media模块
  •   拓展模块
  •   测试框架模块
  •   GlassFish Bundle

  (1)核心模块

模块名称 模块说明 源代码对应目录
jersey-client Jersey核心客户端实现 core-client
jersey-common Jersey通用包 core-common
jersey-server Jersey核心服务器实现 core-server

(2)容器模块

模块名称 模块说明 源代码对应目录
jersey-container-grizzly2-http Grizzly 2版HTTP容器 containers/grizzly2-http
jersey-container-grizzly2-servlet Grizzly 2版Serlet容器 container/grizzly2-servlet
jersey-container-jdk-http JDK版HTTP容器 contailer/jdk-http
jersey-container-servlet Jersey核心Servlet3.x实现 container/jersey-servlet
jersey-container-servlet-core Jersey核心Servlet2.x是实现 container/jersey-servlet-core
jersey-container-simple-http 简单HTTP容器 container/simple-http

(3)连接器模块

Jersey客户端底层依赖连接器实现网络通信,如果标准客户端模块无法实现功能需求,可以考虑引入Grizzly连接器或者Apache连接器

(4) Media模块

  支持Jersey处理传输数据媒体类型的模块。

(5)拓展模块

  Jersey生产环境中包含了许多JAX-RS2.0标准之外的功能,比如MVC,Bean验证辅助REST实现的模块,还有像Spring支持包这样的对第三方框架支持的模块

模块名称 模块说明 源代码相对目录
jersey-media-json-jackson Jersey JSON Jackson包 media/json-jackson
jersey-media-json-jettison Jersey JSON Jettiosn包 media/json-jettison
jersey-media-json-processing Jersey JSON-P(JSR353)包 media/json-processing
jersey-media-moxy Jersey JSON Eclipse Link MOXy包 media/moxy
jersey-media-multipart Jersey Multipart支持包 meida/multipart
jersey-media-sse Jersey Server Sent Events支持包 media/sse 
jersey-bean-validation Bean Validation(JSR-349)支持包 ext/bean-validation
jersey-mvc MVC支持包 ext/mvc
jersey-mvc-freemarker Freemarker模板支持包 ext/mvc-freemarker
jersey-mvc-jsp JSP模板支持包 ext/mvc-jsp
jersey-proxy-client 高层客户端代理支持包 ext/proxy-client
jersey-servlet-portability 兼容Jersey1和Jersey2的Servlet容器支持包 ext/servlet-portability
jersey-wadl-doclet Javadoc支持包 ext/wadl-doclet
jersey-spring3 Spring3支持包 ext/spring3

(6) 测试框架模块

Jersey提供了非常易用和强大的测试框架

模块名称 模块说明 源代码相对目录
jersey-test-frame-core Jersey核心测试框架 test-framework/core
jersey-test-framework-provider-bundle 测试框架Bundle支持包 test-framework-providers/bundle
jersey-test-framework-prodiver-default-client 测试框架客户端包 test-framework-providers/default-client
jersey-test-framework-provider-external 测试框架拓展容器 test-framework-providers/external
jersey-test-framework-grizzly2 测试框架Grizzly2容器 test-framework/providers/grizzly2
jersey-test-framework-provider-inmemory 测试框架内存容器 test-framework/providers/inmemory
jersey-test-framework-provider-jdk-http 测试框架JDK版HTTP容器 test-framework/providers/jdk-http
jersey-test-framework-provider-simple 测试框架简单版HTTP容器 test-framework/providers/simple

(7) GlassFish  bundle模块

GlassFish Bundle模块是Jersey提供的用于以Bundle方式支持GlassFish服务器的模块,包括CDI和EJB集成的拓展包

关于GlassFish项目

Jersey处于GlassFish生态环境中,GlassFish又是Java EE生态环境的实现描述

和Jersey项目关系紧密的项目

(1) HK2

HK2是轻量级DI架构,实现了IOC和ID的内核,是Jersey实现容器内管理Bean的基础。

(2)Grizzly

Grizzly是一个异步I/O的,高效而健壮的服务器,可以用作HTTP服务器.Servlet容器,支持AJP,Comet,WebSocket

(3)EclipseLink

是JPA2.1的一个实现。JPA2.1的是实现中,最常用的是JBOOS的Hibernate

(4)Metro

是JSR中多个标准的官方实现集,目的是为了实现全栈式的Web Service

(5)Open MQ

JMS2.2的参考实现,简化JMS的API

(6)Mojarra

JSF2的官方实现。全栈式,事件驱动的B/S开发模式框架,包括浏览器端凤舞的小组件,服务器端覆盖JavaEE的各种特征。JSF的另一个是是APACHE的MyFaces。

(7) OpenJDK

开源JDK

其他REST框架

  • JBoss的RESTEasy
  • APache的CXF
  • Reslet
  • LinkedIn的Rest.li
  • Spring WEB MVC项目
时间: 2024-08-27 21:23:26

2.Jersey的相关文章

笔记:Jersey REST 传输格式

通常REST接口会以XML或JSON作为主要传输格式,同时 Jersey 也支持其他的数据格式,比如基本类型.文件.流等格式. 基本类型 Java的基本类型又叫原生类型,包括4种整数(byte.short.int.long).2种浮点类型(float.double).Unicode编码的字符(char)和布尔类型(boolean),Jersey 支持全部的基本类型,还支持与之相关的引用类型,示例代码如下: REST 服务代码 @POST @Path("b") public String

笔记:Jersey REST 传输格式-JSON

JSON 类型已经成为Ajax技术中数据传输的实际标准,Jersey 提供了多种处理JSON数据的包和解析方式,下表展示了JSON包和解析方式: 解析方式\JSON支持包 MOXy JSON-P Jackson 基于POJO的JSON绑定 是 否 是 基于JAXB的JSON绑定 是 否 是 低级的(逐字的)JSON解析和处理 否 是 否 使用 MOXy 处理JSON MOXy 是 EclipseLink项目的一个模块,是使用JAXB和SDO作为XML绑定的技术基础,实现了JSR222标准(JAX

Jersey(1.19.1) - Hello World, Get started with Jersey using the embedded Grizzly server

Maven Dependencies The following Maven dependencies need to be added to the pom: <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-server</artifactId> <version>1.19.1</version> </dependency>

jersey 搭建rest服务风格

这里先介绍关于rest的post方式如何来更新list数组,具体rest的相关概念可以参考 http://blog.csdn.net/lfsfxy9/article/details/9205337 既然是提供服务,那么就一定有service端和cient端.这里会用到jersey 框架封装的一些类,以此来展示一个rest服务风格的服务端和客户端. service端 `@POST @Path("/updatePwd") @Produces({ MediaType.APPLICATION_

&lt;转载&gt;在Jersey JAX-RS 处理泛型Collection

在Java中,从1.5开始,我们就可以使用泛型了(generic),这看上去很像C++ Template,但是实际上它们是不同的.在这里我不想过多的描述细节,你可以从Google上搜索一下. 但是,泛型已经变得如此复杂,以至于已经有500多页的 FAQ. 我们长话短说:泛型提供了编译时类型安全,所以也消除了类型转换的(cast)的需要.它是通过被称为类型消除(type erasure)的编译时技术来实现的. 泛型FAQ解释了所有的细节,对我来说它就是Java泛型的圣经.在有些情况下,我们需要从J

在springboot中整合jersey和springfox-swagger2

前言 为了实现RESTful Webservice和接口说明,基于springboot平台,使用jersey作为JAX-RS的实现,采用swagger文档在线生成工具. 提要 在实现了springboot集成jersey的swagger文档功能,同时满足SpringMVC 整合swagger提供RESTful文档功能. Springboot  集成swagger 通过springfox-swagger2实现SpringMVC的RESTful文档接口服务: Springboot  集成 Jerse

Java Restful框架:Jersey入门示例(官方例子)

本文主要介绍了Java Restful框架Jersey入门例子(来源于官方网站https://jersey.java.net/),废话不多说进入正题. 在Jersey官方示例中(https://jersey.java.net/documentation/latest/getting-started.html),入门例子主要采用maven构建,在这里使用eclipse来创建我们的项目 1.使用maven 骨架方式创建项目,如下图, 2.,如果在eclipser中没有上面的选项,我们需要手动添加Je

Jersey(1.19.1) - WebApplicationException and Mapping Exceptions to Responses

Previous sections have shown how to return HTTP responses and it is possible to return HTTP errors using the same mechanism. However, sometimes when programming in Java it is more natural to use exceptions for HTTP errors. The following example shows

Table of Contents - Jersey

Jersey 1.19.1 Getting Started Get started with Jersey using the embedded Grizzly server Get started with a Web application

原创:Equinox OSGi应用嵌入Jersey框架搭建REST服务

一.环境 eclipse版本:eclipse-luna 4.4 jre版本:1.8 二.Equinox OSGi应用嵌入Jersey框架搭建REST服务 1.新建插件工程HelloWebOSGI a. b. c. d.在新建的工程中新建文件夹lib,其中放入附件中的jar包(见文末),全部添加到工程Build Path中. 2.配置运行环境 a.配置引入包.依赖插件 b.选择Run->Run Configuration,new一个环境 保留图中TargetPlatform中的16个Bundle.