我正在使用JAX-RS和Jersey创建一个REST API。
我提供多种"类型",例如事件和用户信息。 问题是,我得到了很多冗余的代码,而且我不知道如何帮助自己。
Per" type"我有一个模型,一个DAO和一个资源。 我认为可以在资源中节省很多打字。
这是一个例子:
@Path("/user")
public class UserResource {
@Context
private UriInfo uriInfo;
@Context
private Request request;
@Context
private String id;
@Context
private HttpServletResponse response;
@GET
@Produces(MediaType.APPLICATION_JSON)
public List<Object> getUsers() {
return UserDao.instance.listElements();
}
@GET
@Path("count")
@Produces(MediaType.TEXT_PLAIN)
public int getCount() {
return UserDao.instance.listElements().size();
}
@GET
@Path("{id}")
public User getUser(@PathParam("id") String id,
@Context HttpHeaders headers,
@Context HttpServletResponse servletResponse) throws IOException{
AuthChecker.check(headers, servletResponse);
Object obj=UserDao.instance.getElement(id);
if(obj==null){
response.sendError(Response.Status.NOT_FOUND.getStatusCode());
}
return (User)obj;
}
。 。 。等等。
所以对于类型&#34;事件&#34;所有这些功能基本相同。我该怎么做才能为多种&#34;类型&#34;。
保存所有这些内容