@QueryParam和@PathParam比较

来源:http://jackyrong.iteye.com/blog/1128364

1 先来看@queryparam

  1. Path("/users")
  2. public class UserService {
  3. @GET
  4. @Path("/query")
  5. public Response getUsers(
  6. @QueryParam("from") int from,
  7. @QueryParam("to") int to,
  8. @QueryParam("orderBy") List<String> orderBy) {
  9. return Response
  10. .status(200)
  11. .entity("getUsers is called, from : " + from + ", to : " + to
  12. + ", orderBy" + orderBy.toString()).build();
  13. }
  14. }

URL输入为:users/query?from=100&to=200&orderBy=age&orderBy=name
此时,输出为:
getUsers is called, from : 100, to : 200, orderBy[age, name]

要注意的是,跟@pathparam不同,@queryparam中,指定的是URL中的参数是以键值对的形式出现的,而在程序中
@QueryParam("from") int from则读出URL中from的值, 而@pathparem中,URL中只出现参数的值,不出现键值对,比如: “/users/2011/06/30”

2,@PathParam例子

    1. @GET
    2. @Path("{year}/{month}/{day}")
    3. public Response getUserHistory(
    4. @PathParam("year") int year,
    5. @PathParam("month") int month,
    6. @PathParam("day") int day) {
    7. String date = year + "/" + month + "/" + day;
    8. return Response.status(200)
    9. .entity("getUserHistory is called, year/month/day : " + date)
    10. .build();
    11. }
时间: 2024-11-09 09:29:40

@QueryParam和@PathParam比较的相关文章

WebService @QueryParam @DefaultValue @PathParam的区别

1 先来看@queryparam    先看例子:   Java代码 Path("/users") public class UserService { @GET @Path("/query") public Response getUsers( @QueryParam("from") int from, @QueryParam("to") int to, @QueryParam("orderBy") Li

关于两个标签的比较@queryparam和@pathparam

最近在用dubbox做一个系统,系统中涉及到了一些我之前没有用到过的标签,特地摘抄到这里,做个总结. 需求场景是这样的,之前有个方法是这样的 @GET    @Path("/ifast/{name}/{cardType}/{cardId}")    public ExtProdQueryResult queryIfastInvestInfo(@PathParam("name") String name,            @PathParam("car

jersey

在jersey中主要弄清楚这么几个注释: 1.@Path ,定义路径. 2.@GET.@POST.@PUT等,定义提交请求的方法. 3.@Consumes,定义接收请求的参数格式,是JSON.XML,还是form表单. 4.@Produces,定义输出的格式,输出XML.JSON等格式. 5.@XmlRootElement.@XmlElement.@XmlAttribute定义根元素.元素.属性,使用这些注解可以自定义xml的输出格式. 6.@FormParam.@QueryParam.@Pat

JAX-RS规范-常用注解浅析

一.@Path 若希望一个Java类能够处理REST请求,则这个类必须至少添加一个@Path("/")的annotation: 对于方法,这个annotation是可选的,如果不添加,则继承类的定义. (1)@Path里的值可以是一个复杂的表达式,例如@Path("{id}") ,其中 {id}表达式代码了一个模板参数: 一个模板参数是一个定义在@Path里的通配符,它以 { 开始,中间是一堆字母和数字的混合串(不能包含 / 字符),以 } 结尾.又如: @Path

JAX-RS 接收参数注意默认为非编码

API文档部分 @Target({ElementType.PARAMETER, ElementType.METHOD, ElementType.FIELD}) @Retention(RetentionPolicy.RUNTIME) public @interface FormParam { /** * Defines the name of the form parameter whose value will be used * to initialize the value of the a

使用JAX-RS创建RESTful Web Service

http://blog.csdn.net/withiter/article/details/7349795 本章介绍REST架构.RESTful web service和JAX-RS(Java API for RESTful Web Service,JSR 311).JAX-RS的参考实现Jersey实现了对JSR 311中定义的注解的支持,使得使用Java编程语言开发RESTful web service变得简单.如果是使用GalssFish服务器,可以使用Update Tool安装Jerse

jax-rs中的一些参数标注简介(@PathParam,@QueryParam,@MatrixParam,@HeaderParam,@FormParam,@CookieParam)

先复习一下url的组成: scheme:[//[user:[email protected]]host[:port]][/]path[?query][#fragment] jax-rs anotation @PathParam : 在请求拼接在url中的uri中 如:http://localhost:8080/books/1?price=20 假如这个uri books/1的1是表示书的类别 ,那么1就可以认为是@Param @QueryParam: @QueryParam是问号后面的请求参数

RESTEasy:@FormParam、@PathParam、@QueryParam、@HeaderParam、@CookieParam、@MatrixParam说明

在第一RESTEasy教程我们已经学习了基本的Web服务和休息我们已经测试了一个简单的REST风格的Web服务.在本教程中,我们将显示如何将Web应用程序元素(形式参数,查询参数和更多)为REST风格的Web服务.你可以使用下面的注释绑定HTTP请求REST风格的Web服务: @FormParam@PathParam@QueryParam@HeaderParam@CookieParam@MatrixParam 让我们探索所有可能的相互作用. @FormParam @formparam可以用来注入

@RequestParam,@PathParam,@PathVariable,@QueryParam注解的使用区别

获取url模板上数据的(/{id})@DefaultValue 获取请求参数的(包括post表单提交)键值对(?param1=10&param2=20).可以设置defaultValue JAX-RS @PathParam @QueryParam Spring @PathVariable @RequestParam 有一次的请求是 : http://localhost:8080/system/getMenuListPage?level=0&parent_id=0&_=1532879