Jersey(一) JAX-RS 应用,资源和子资源

原文:https://jersey.github.io/documentation/latest/jaxrs-resources.html

1、根资源类

POJO满足两个条件:用@Path给类注解,至少有一个方法用@Path或者一个资源方法用资源方法注解(如@GET@PUT@POST@DELETE)。

package org.glassfish.jersey.examples.helloworld;
 
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
 
@Path("helloworld") //@Path 注解是相对URI路径,前后有没有/都一样 。也把变量放在{}里,同时还可以用正则表达式限定路径
public class HelloWorldResource {
    public static final String CLICHED_MESSAGE = "Hello World!";
 
@GET//HTTP方法,如果没有指定,默认自动支持@HEAD@OPTIONS
    public String getHello() {
        return CLICHED_MESSAGE;
    }
}
@Path("users/{username: [a-zA-Z][a-zA-Z_0-9]*}")//带变量和正则表达式限定条件的@Path 注解
public class UserResource {
 
    @GET
    @Produces("text/xml")//可以返回给客户端的MIME媒体类型,可用于类,也可用于方法
    public String getUser(@PathParam("username") String userName) {// @PathParam用来获取请求方法路径的参数
        ...
    }
@GET
@Produces({"application/xml;qs=0.9","application/json"} )//多个MIME类型, 并且可以指定qs(quality factor)

public String doGetAsXmlOrJson() {
    ...
}
}

 

@HEAD会调用Get方法(if present),忽略返回消息体(if set)。@OPTIONS的返回由“Accept”头里定义的请求媒体类型决定。@OPTIONS可返回一组“Allow”头里支持的资源方法的返回,或者返回WADL文档。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值