如何只返回类的某些属性作为JSON

bir*_*rdy 1 java json jackson dropwizard

我正在使用drop wizard,它使用Jackson作为JSON返回类.

如何只返回类中的某些属性作为JSON而不是返回所有属性.

例如用户POJO

public class User {
  private int id;
  private String username;
  private String password
  //getter setters
}
Run Code Online (Sandbox Code Playgroud)

signin路径:

@GET
@Path("/signin")
public User signin(@Auth User user) {
    return user;
}
Run Code Online (Sandbox Code Playgroud)

返回{"password":null,"id":0,"username":"foobar"}我怎么才能返回{"username":"foobar"}

Sot*_*lis 5

您可以使用注释字段或getter/setter

@JsonIgnore
Run Code Online (Sandbox Code Playgroud)

或者用类注释

@JsonIgnoreProperties(value = {"password", "id"})
Run Code Online (Sandbox Code Playgroud)