jersey annotations

参照:html

http://blog.csdn.net/a19881029/article/details/43056429java

官网文档翻译版正则表达式

 

@Pathide

用来为资源类或方法定义URI,固然除了静态URI也支持动态URIui

@Path("service")   

public class MyResource {  

@Path("{sub_path}")  

@GET  

public String getResource(@PathParam("sub_path") String resourceName) {  

......  

若是此时客户端请求的URI为http://127.0.0.1:10000/service/sean,则sub_path的值为seanspa

 

@PathParam用来将请求URI的一部分做为方法参数传入方法中.net

对URI的动态部分,能够自定义校验正则表达式,若是请求参数校验失败,容器返回404 Not Found翻译

@Path("{sub_path:[A-Z]*}")  

 

 

@GETcode

代表被注解的方法响应HTTP GET请求,@POST@PUT@DELETE同理htm

@Consumes

定义请求的媒体类型,若是不指定,则容器默承认接受任意媒体类型,容器负责确认被调用的方法可接受HTTP请求的媒体类型,不然返回415 Unsupported Media Type

方法级注解将覆盖类级注解

@Produces

定义响应媒体类型,若是不指定,则容器默承认接受任意媒体类型,容器负责确认被调用的方法可返回HTTP请求能够接受媒体类型,不然返回406 Not Acceptable

方法级注解将覆盖类级注解

@QueryParam

 
public String getResource(  
        @DefaultValue("Just a test!") @QueryParam("desc") String description) {  
    ......  
}  

若是请求URI中包含desc参数,例如:http://127.0.0.1:10000/service/sean?desc=123456,则desc参数的值将会赋给方法的参数description,不然方法参数description的值将为@DefaultValue注解定义的默认值

@Context

将信息注入请求或响应相关的类,可注入的类有:Application,UriInfo,Request,HttpHeaders和SecurityContext

@Singleton@PerRequest

默认状况下,资源类的生命周期是per-request,也就是系统会为每一个匹配资源类URI的请求建立一个实例,这样的效率很低,能够对资源类使用@Singleton注解,这样在应用范围内,只会建立资源类的一个实例

相关文章
相关标签/搜索