java jersey介绍
简介
Jersey是JAX-RS(JSR311)开源参考实现用于构建RESTful Web service,它包含三个部分:
核心服务器(Core Server):通过提供JSR 311中标准化的注释和API标准化,可以用直观的方式开发RESTful Web服务。
核心客户端(Core Client):Jersey客户端API能够帮助开发者与RESTful服务轻松通信;
集成(Integration):Jersey还提供可以轻松继承Spring、Guice、Apache Abdera的库。
在项目中构架:
设置Jersey环境
Maven
<dependency><groupId>org.glassfish.jersey.containers</groupId><artifactId>jersey-container-grizzly2-servlet</artifactId><version>${jersey-version}</version></dependency><dependency><groupId>org.glassfish.jersey.containers</groupId><artifactId>jersey-container-servlet-core</artifactId><version>${jersey-version}</version></dependency><dependency><groupId>org.glassfish.jersey.media</groupId><artifactId>jersey-media-json-jackson</artifactId><version>${jersey-version}</version></dependency><!-- Required only when you are using JAX-RS Client --><dependency><groupId>org.glassfish.jersey.core</groupId><artifactId>jersey-client</artifactId><version>${jersey-version}</version></dependency>
基本步骤演示:
1.编写一个名为HelloResource的资源,它接受Http Get请求并响应
package com.lgy.resource;import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;import com.lgy.bean.Result;@Path("hello")
public class HelloResource {@Path("say")@GET@Produces(MediaType.TEXT_PLAIN)public String say() {System.out.println("hello world");return "hello world"; }@Path("test")@GET@Produces(MediaType.APPLICATION_JSON)public Result<String> test() {Result<String> result = new Result<String>();result.success("aaaaaa");return result;}
}
2.编写JAX-RS application,并注册HelloResource
package com.lgy.config;import org.glassfish.jersey.filter.LoggingFilter;
import org.glassfish.jersey.server.ResourceConfig;import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider;
import com.lgy.resource.HelloResource;public class MyApplication extends ResourceConfig {public MyApplication() {//加载Resourceregister(HelloResource.class);//注册数据转换器register(JacksonJsonProvider.class);// Logging.register(LoggingFilter.class);}
}
3.在web.xml核心配置文件配置jersey servlet,随着容器的启动,项目进行启动
<!DOCTYPE web-app PUBLIC"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN""http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app><display-name>Archetype Created Web Application</display-name><servlet><servlet-name>SpringApplication</servlet-name><servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class><init-param><param-name>javax.ws.rs.Application</param-name><param-value>com.lgy.config.MyApplication</param-value></init-param><load-on-startup>1</load-on-startup></servlet><servlet-mapping><servlet-name>SpringApplication</servlet-name><url-pattern>/*</url-pattern></servlet-mapping>
</web-app>
用tomcat或者jetty启动:localhots:8080/hello/say
项目源码(oschina git):https://git.oschina.net/fengchao111/restful-jersey.git
java jersey介绍相关推荐
- Java Jersey使用总结
前言 在短信平台一期工作中,为便于移动平台的开发,使用了Java Jersey框架开发RESTFul风格的Web Service接口.在使用的过程中发现了一些问题并积累了一些经验.因此,做下总结备忘, ...
- 流行的9个Java框架介绍: 优点、缺点等等
流行的9个Java框架介绍: 优点.缺点等等 在 2018年,Java仍然是世界上最流行的编程语言.它拥有一个巨大的生态系统,在全世界有超过900万Java开发人员.虽然Java不是最直接的语言,但是 ...
- Android下HelloWorld项目的R.java文件介绍
R.java文件介绍 HelloWorld工程中的R.java文件 package com.android.hellworld; public final class R { public s ...
- java英语介绍_java,英文介绍项目.doc
java,英文介绍项目 java,英文介绍项目 篇一:Java开发常见英文 Java基础常见英语词汇(共70个) Author:ZW OO: object-oriented ,面向对象OOP: obj ...
- Java命令学习系列(零)——常见命令及Java Dump介绍
Java命令学习系列(零)--常见命令及Java Dump介绍 一.常用命令: 在JDK的bin目彔下,包含了java命令及其他实用工具. jps:查看本机的Java中进程信息. jstack ...
- java coin介绍_代码示例中的Java 7:Project Coin
java coin介绍 该博客通过代码示例介绍了一些新的Java 7功能,这些项目在Project Coin一词下进行了概述. Project Coin的目标是向JDK 7添加一组小的语言更改.这些更 ...
- java hadoop api_Hadoop 系列HDFS的Java API( Java API介绍)
HDFS的Java API Java API介绍 将详细介绍HDFS Java API,一下节再演示更多应用. Java API 官网 如上图所示,Java API页面分为了三部分,左上角是包(Pac ...
- js 中转换成list集合_程序员:java集合介绍-List,具说很详细,你不来看看?
Java集合介绍 作为一个程序猿,Java集合类可以说是我们在工作中运用最多.最频繁的类.相比于数组(Array)来说,集合类的长度可变,更加方便开发. Java集合就像一个容器,可以存储任何类型的数 ...
- protobuf 3.5 java使用介绍(二)
protobuf 3.5 java使用介绍(二) 上一篇遗留了两个问题: 1,数据模型中有可能会出现数组格式,而数组里面是一个其他的模型,这个怎么来做? 2,构建数据消息的时候,通常会有一个头,一个体 ...
最新文章
- 关于fastlane自动化打包
- python中的函数参数主要有四种_python3中函数参数的四种简单用法
- BZOJ 4244 邮戳拉力赛 (DP)
- QT 调用QWebEngineView显示网页
- 忽然看懂了《大话西游》
- 二维数组数组名的使用
- 使用ST05 研究product extension field deletion
- HttpURLConnection, Android访问网络,实用demo
- lingo的初步使用(集)
- (转) vector的reserve和resize
- 主流存储设备的现状和优缺点分析
- ASP.NET MVC Json() 处理大数据异常解决方法 json MaxJsonLength
- LOIC网站压力测试工具
- 采用计算机对酒店客房进行管理,酒店客房部计算机管理.doc
- 汉字大全20000个字_男生秀恩爱的说说简短八字 小情话大全暖心8个字
- 网站卡顿,推荐这些免费使用加速工具的网站
- Yann Martell《少年 pi 的奇幻漂流》
- 黑苹果主机z77技嘉wifi主板,
- 安卓项目查手机电量功能_安卓手机也能像苹果一样!这一招教你如何查看手机电池损耗...
- PostgreSQL - 学习/实践