1 回答

TA貢獻1772條經(jīng)驗 獲得超8個贊
一個干凈的方法是使用@JsonView杰克遜注釋。
定義視圖:
public class UserViews {
public static class Normal {}
public static class High extends Normal {}
public static class Admin extends High {}
}
注釋您的模型:
class User {
@JsonView(UserViews.Normal.class)
private int id;
@JsonView(UserViews.Normal.class)
private String fName;
@JsonView(UserViews.Normal.class)
private String lName;
@JsonView(UserViews.High.class)
private String mobile;
@JsonView(UserViews.High.class)
private String email;
@JsonView(UserViews.Admin.class)
private String bDate;
// getters and setters
}
并告訴 jackson 應(yīng)該使用哪個視圖來序列化:
mapper.writerWithView(UserViews.Admin.class).writeValueAsString(user);
在將數(shù)據(jù)發(fā)送到前端之前,您可以封裝和集中 jackson 應(yīng)該使用哪個視圖的邏輯
添加回答
舉報