[size=large]
之前对于Webservice已经看了很多,包括axis,axissession校验(保持会话),cxf,jsr311等等,今天看了jersey,简单的写了一个例子。分享给入门的朋友。

jersey是一种restful框架,使用它为我们提供接口。有三块重要的东西,jersey-server,jersey-core, 集成(与spring等等)

codeing之前,先看看需要什么东西,也就是jar

我用的是maven工程,配置了

<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-server</artifactId>
<version>2.4.1</version>
</dependency>

<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>2.4.1</version>
</dependency>

<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.1.13</version>
</dependency>

<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.17.1</version>
</dependency>

<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-core</artifactId>
<version>1.17.1</version>
</dependency>

<dependency>
<groupId>javax.ws.rs</groupId>
<artifactId>javax.ws.rs-api</artifactId>
<version>2.0</version>
</dependency>

都是在jersey开发中需要使用的,我加的比较全面。

说明一下:工程名字jerseydemo,包名 cn.thinkjoy.jerseydemo.resources.

在web.xml中配置

<servlet>
<servlet-name>Jersey REST Service</servlet-name>
<servlet-class>
com.sun.jersey.spi.container.servlet.ServletContainer
</servlet-class>
<init-param>
<param-name>com.sun.jersey.config.property.packages</param-name>
<param-value>cn.thinkjoy.jerseydemo.resources</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>

然后在包下写类文件:

import javax.annotation.Resources;
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 HelloResource {
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHello() {
return "<html>hello world ! <br/><font color='red'>111</font></html>";

}

}

相关解释:
资源类(Resource Class):注意,资源类是一个简单的 Java 对象 (POJO),可以实现任何接口。这增加了许多好处,比如可重用性和简单。
注释(Annotation):在 javax.ws.rs.* 中定义,是 JAX-RS (JSR 311) 规范的一部分。
@Path:定义资源基 URI。由上下文根和主机名组成,资源标识符类似于 http://localhost:8080/Jersey/rest/hello。
@GET:这意味着以下方法可以响应 HTTP GET 方法。
@Produces:以纯文本方式定义响应内容 MIME 类型。

我用的jetty启动服务,代码如下:
import org.mortbay.jetty.Server;
import org.springside.modules.test.utils.JettyUtils;

public class StartServer {
public static final int PORT = 8080;
public static final String CONTEXT = "/jerseydemo";
public static final String BASE_URL = "http://localhost:8080/jerseydemo";

public static void main(String[] args) throws Exception {
Server server = JettyUtils.buildNormalServer(PORT, CONTEXT);
server.start();
System.out.println("Hit Enter in console to stop server");
try {
if (System.in.read() != 0) {
server.stop();
System.out.println("Server stopped");
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
}

运行StartServer之后,在本地浏览器窗口 输入地址: http://localhost:8080/jerseydemo/rest/hello

可以看到返回的结果

结果就不给大家附上了。

这是一个很简单的入门级联系。

[/size]

jersey 简单使用相关推荐

  1. Guice + Jersey + Jetty 框架 - 学习笔记

    因项目使用 Guice + Jersey + Jetty 框架,所有进行了学习,下面是学习笔记. 目录 一.Guice 1. 依赖注入方式: @Inject 2. 依赖绑定(依赖注册): bind() ...

  2. jersey的简单使用原理(jersey1.15版本)

    来到新公司,看了一下框架,使用了一个jersey的RESTful的API,之前听都没听过,也不知道是个什么鸟东东,抽空看了一下他的简单使用方法和原理,记录一下. 一.web.xml配置 <ser ...

  3. JAX-RS(基于Jersey) + Spring 4.x + MyBatis构建REST服务架构

    0. 大背景 众所周知,REST架构已经成为现代服务端的趋势. 很多公司,已经采用REST作为App, H5以及其它客户端的服务端架构. 1. 什么是JAX-RS? JAX-RS是JAVA EE6 引 ...

  4. Spring Cloud Edgware新特性之一:解决Eureka中Jersey 1.x版本过旧的问题-不使用Jersey

    为什么80%的码农都做不了架构师?>>>    Spring Cloud是当前炙手可热的微服务开发框架.它的功能强大,组件丰富,设计优雅.目前Spring Cloud还在不断发展之中 ...

  5. 通过 Jersey Http请求头,Http响应头,客户端 API 调用 REST 风格的 Web 服务

    原地址:http://blog.csdn.net/li575098618/article/details/47853263 Jersey 1.0 是一个开源的.可以用于生产环境的 JAX-RS(RES ...

  6. java 集成grizzly_java – 在Grizzly上使用JaaS和Jersey

    我正在尝试找到一种简单,灵活的方法来向REST添加JaaS身份验证.我找到了一个post,我认为这导致我朝着正确的方向前进(参见StevenC的回答).听起来servlet容器负责安全性,而不是Jer ...

  7. Jersey 入门与Javabean

    Jersey是JAX-RS(JSR311)开源参考实现用于构建RESTful Web service,它包含三个部分: 核心服务器(Core Server) 通过提供JSR 311中标准化的注释和AP ...

  8. jerseycom.sun.jersey.api.client.UniformInterfaceException

    在使用jersey发送图片到另一台tocmat服务器的时候,报这个错com.sun.jersey.api.client.UniformInterfaceException:returned a res ...

  9. 使用 Jersey 和 Apache Tomcat 构建 RESTful Web 服务

    http://www.ibm.com/developerworks/cn/web/wa-aj-tomcat/ 使用 Jersey 和 Apache Tomcat 构建 RESTful Web 服务 Y ...

最新文章

  1. 3168串口java_电子称串口读取数据(转)
  2. 使用脚本恢复Windows XP系统的用户密码
  3. 「luogu3704」[SDOI2017]数字表格
  4. Microsoft Expression Web Beta 1
  5. Oracle 删除归档日志脚本
  6. 关于js封装函数的一些东西
  7. PL/SQL表---table()函数用法
  8. python animation set data_imshow.set_数据()不适用于FuncAnimation
  9. idea导出war包并部署在tomact
  10. html图片滚动红点_程序员最爱的小红点更新了!史上最薄的钛制ThinkPad发布
  11. 1matlab像素值及统计
  12. 2021新年腊八祝福语短信
  13. openjudge 1.9.14 铺地毯
  14. 2020年SEM小搜投放指南:竞价小渠道如何把效果做到极致
  15. 【WZOI】AC大礼包(1~130)
  16. php怎么将中文翻译成英文,PHP将中文翻译成拼音
  17. Excel学习笔记1
  18. 顺丰科技运维开发工程师二面面经
  19. MainWindow漫谈
  20. ERP真能大刀阔斧得起来?(转)

热门文章

  1. Windows Style Builder学习制作笔记(一)
  2. hp微型计算机装打印机,hp打印机如何安装 hp打印机安装步骤及注意事项【详解】...
  3. Unity与服务器通信方式有哪些?
  4. 列出对象属性,for(var i in obj)
  5. 微信翻译如何使用?在微信中如何进行中翻译英
  6. 微信小程序(五)--- Vant组件库,API Promise化,MboX全局数据共享,分包相关
  7. 用EXCEL制作“倒计时器
  8. 从0到1玩转戴尔G7 7588 macOS Win 双系统
  9. Blender展UV插件:UVSquares
  10. 树莓派声音输出设置_Raspberry Pi(树莓派)声音输出的设置