我如何在泽西岛获得 JSON body?
How do I get the JSON body in Jersey?
在泽西岛有 @RequestBody
对应物吗?
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, @RequestBody body) {
voteDAO.create(new Vote(body));
}
我希望能够以某种方式获取发布的JSON。
您不需要任何注释。唯一没有注释的参数将是请求主体的容器:
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, String body) {
voteDAO.create(new Vote(body));
}
或者您可以将正文解析为对象:
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, Vote vote) {
voteDAO.create(vote);
}
@javax.ws.rs.Consumes(javax.ws.rs.core.MediaType.APPLICATION_JSON)
应该已经在这里帮助你了,只是其余参数必须使用注释标记,因为它们是不同类型的参数 -
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, <DataType> body) {
voteDAO.create(new Vote(body));
}
如果你想把你的 json 作为投票对象,那么简单地在你的 mathod 参数中使用 @RequestBody 投票正文,Spring 会自动将你的 Json 转换为投票对象。
在泽西岛有 @RequestBody
对应物吗?
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, @RequestBody body) {
voteDAO.create(new Vote(body));
}
我希望能够以某种方式获取发布的JSON。
您不需要任何注释。唯一没有注释的参数将是请求主体的容器:
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, String body) {
voteDAO.create(new Vote(body));
}
或者您可以将正文解析为对象:
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, Vote vote) {
voteDAO.create(vote);
}
@javax.ws.rs.Consumes(javax.ws.rs.core.MediaType.APPLICATION_JSON)
应该已经在这里帮助你了,只是其余参数必须使用注释标记,因为它们是不同类型的参数 -
@POST()
@Path("/{itemId}")
@Consumes(MediaType.APPLICATION_JSON)
public void addVote(@PathParam("itemId") Integer itemId, <DataType> body) {
voteDAO.create(new Vote(body));
}
如果你想把你的 json 作为投票对象,那么简单地在你的 mathod 参数中使用 @RequestBody 投票正文,Spring 会自动将你的 Json 转换为投票对象。