首页 > 代码库 > Jersey中的常用注解总结

Jersey中的常用注解总结

 

@GET:该注解标记的方法表明用于处理GET请求,GET方法是幂等且安全的。

@POST:该注解标记的方法表明处理POST请求,POST方法表明是一种创建操作的方法,POST方法是一种写操作的HTTP请求,RPC中的写操作均是使用post方法,而在REST中我们只是使用POST方法来添加资源。

@DELETE:该注解标记的方法表明这个方法执行的是一个删除资源的操作,其返回值可以是void,即没有返回值。

@Consumes:在服务器端,@Consumes(MediaType.APPLICATION_XML)定义了服务器端要消费的媒体类型,也就是说消费客户端请求实体的媒体类型,可以是xml、json等类型。

@Produces:@Consumes(MediaType.APPLICATION_XML)定义了服务器端生产的媒体类型,即服务器端产生的响应实体的媒体类型,同样也可以是xml、json等媒体类型。

@Path:该注解可以标记在类名之上,也可以标记在方法名上。该注解接收一个value参数,表示定义资源的地址。另外,资源地址相同,但是HTTP方法不同的两个方法是完全两个不同的REST接口,HTTP方法和资源地址相结合在一起才可以完成对一个资源的定位。

package com.zte.ems.resource;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.core.Context;
import org.springframework.stereotype.Component;
@Component
@Path("/weclome")
public class JerseyResource {
    @GET
    @Path("/wrong")
    public void getPage(@Context HttpServletRequest request) {
        System.out.println("这是一个get方法!");
    }
    @POST
    @Path("/wrong")
    public void postPage(@Context HttpServletRequest request) {
        System.out.println("这是一个post方法!");
    }

}

以上面这个类为例,虽然@Path的组合是"/weclome/wrong",但是由于HTTP方法不同,因此,执行的方法体也是不同的。

@QueryParam:该注解表明是一个查询条件,查询条件决定了方法的作用域,查询参数组成了查询条件。Jersey中使用@QueryParam注解来定义查询参数。另外注解@QueryParam还可以和注解@DefaultVaule一起使用,注解@DefaultValue的作用则是预置一个默认值,当请求中不包括该参数时候使用这个默认值。

@PathParam:该注解定义路径的参数信息,每一个参数都对应一个子资源。

@FormParam:该注解表示用来定义表单的参数。

@Context:该注解用来解析上下文参数。(@Context HttpRequest request)

 

Jersey中的常用注解总结