resteasy一

一:概念

JAX-RS:基于http协议的restful web service的一套java API

resteasy:符合JAX-RS规则的能够在servlet容器内运行的restful  web service框架的一个实现,其本身就是一个servlet实现

二:安装

下载并解压,将lib目录下的文件放入你的/WEB-INF/lib目录下(maven的话直接加dependency即可)

三:标签

1:@Path

浏览器访问的URL路径,访问的实现是由servlet容器来实现的

项目经验:webclient与webservice约定俗成,只要一致就可以对应,名字可以随意起,只要唯一并对应即可

类上面和方法上面都可以使用@Path标签

除了可以是简单的路径之外,也可以是路径匹配的正则表达式  "{" variable-name [ ":" regular-expression ] "}"

例如:

a:/resources/stuff
b:/resources/foo/stuff
c: /resources/on/and/on/stuff

@Path("{var:.*}/stuff")                   匹配a、b、c

@Path("/resources/{var}/stuff")      匹配b

2:@PathParam

java对象:例如String

@Path("/library")
public class Library {
 @GET
 @Path("/book/{isbn}")
 public String getBook(@PathParam("isbn") String id) {
 // search my database and get a string representation and return it
 }
}
自创对象:如下(对象要么有String参数的构造函数,要么实现valueof方法)

@GET
@Path("/book/{isbn}")
public String getBook(@PathParam("isbn") ISBN id) {...}
public class ISBN {
     public ISBN(String str) {...}
}
public class ISBN {
     public static ISBN valueOf(String isbn) {...}
}

也符合正则表达式

1. @Path("/aaa{param}bbb")
2. @Path("/{name}-{zip}")
3. @Path("/foo{name}-{zip}bar")

 "/aaa111bbb"                    匹配1

 "/bill-02115"                      匹配2

 "foobill-02115bar"            匹配3

"many"与“param"

@GET
@Path("/aaa{param:b+}/{many:.*}/stuff")
public String getIt(@PathParam("param") String bs, @PathParam("many") String many) {...}

Request                                                            param                          many
GET /aaabb/some/stuff                                     bb                              some
GET /aaab/a/lot/of/stuff                                       b                               a/lot/of

3:@QueryParam

@ QueryParam注解允许你映射一个URI查询字符串参数或URL形式编码参数的方法调用.

4:@:HeaderParam

@ HeaderParam注解允许你映射请求的HTTP报头的方法调用.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值