@Path("/users")
@Produces(MediaType.APPLICATION_JSON)
@Consumes(MediaType.APPLICATION_JSON)
public class UserResource {
// ...
}
@GET
public List<User> getUsers() {
}
@POST
public Response createUser(User user) {
}
@PUT
@Path("/{id}")
public Response updateUser(@PathParam("id") String id, User user) {
}
@DELETE
@Path("/{id}")
public Response deleteUser(@PathParam("id") String id) {
}
<servlet>
<servlet-name>jersey-servlet</servlet-name>
<servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
<init-param>
<param-name>jersey.config.server.provider.packages</param-name>
<param-value>com.example.resources</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>jersey-servlet</servlet-name>
<url-pattern>/api/*</url-pattern>
</servlet-mapping>
@POST
public Response createUser(InputStream entityStream) {
ObjectMapper mapper = new ObjectMapper();
User user = mapper.readValue(entityStream, User.class);
}