任何简化此 POST 的提示? (Java)
Any hint to simplify this POST? (Java)
我在 Jax-RS 中实现了这个 POST 操作,它工作正常,但我确信我可以通过其他方式发送正文。任何简化它的提示? (例如通过接收对象?)
谢谢!
@POST
@Path("updateUser/{name}/{surname}/{address}")
@Produces(MediaType.TEXT_PLAIN)
public Response updateUser(@FormParam("user") String name,
@FormParam("surname") String surname,
@FormParam("address") String address) throws UnknownHostException {
User user;
user = new CorporateUser(name, surname, address);
usersService.updateUser(user);
return Response.ok(user).build();
}
您可以使用@consumes 注释传递json 对象字符串。
@POST
@Path("/updateUser")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
public Response updateUser(User bean) {
usersService.updateUser(user);
return Response.ok(user).build();
}
向您的项目添加 JSON 提供商,例如 Jackson。
@POST
@Path("updateUser")
@Consumes(value = { MediaType.APPLICATION_JSON })
@Produces(value = { MediaType.APPLICATION_JSON })
public Response updateUser(NewCorporateUserRequest req) throws UnknownHostException {
User user;
user = new CorporateUser(req.getName(), req.getSurname(), req.getAddress());
usersService.updateUser(user);
return Response.ok().entity(user).type(MediaType.APPLICATION_JSON).build();
}
public class NewCorporateUserRequest implements java.io.Serializable {
private String name;
private String surname;
private String address;
... Getters and Setters.
}
我在 Jax-RS 中实现了这个 POST 操作,它工作正常,但我确信我可以通过其他方式发送正文。任何简化它的提示? (例如通过接收对象?)
谢谢!
@POST
@Path("updateUser/{name}/{surname}/{address}")
@Produces(MediaType.TEXT_PLAIN)
public Response updateUser(@FormParam("user") String name,
@FormParam("surname") String surname,
@FormParam("address") String address) throws UnknownHostException {
User user;
user = new CorporateUser(name, surname, address);
usersService.updateUser(user);
return Response.ok(user).build();
}
您可以使用@consumes 注释传递json 对象字符串。
@POST
@Path("/updateUser")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
public Response updateUser(User bean) {
usersService.updateUser(user);
return Response.ok(user).build();
}
向您的项目添加 JSON 提供商,例如 Jackson。
@POST
@Path("updateUser")
@Consumes(value = { MediaType.APPLICATION_JSON })
@Produces(value = { MediaType.APPLICATION_JSON })
public Response updateUser(NewCorporateUserRequest req) throws UnknownHostException {
User user;
user = new CorporateUser(req.getName(), req.getSurname(), req.getAddress());
usersService.updateUser(user);
return Response.ok().entity(user).type(MediaType.APPLICATION_JSON).build();
}
public class NewCorporateUserRequest implements java.io.Serializable {
private String name;
private String surname;
private String address;
... Getters and Setters.
}