javabean中有很多屬性,但實際上只需要一部分屬性轉為json字串,
請問 如何控制只會將指定的屬性轉為json字串? ?
不知道是儲存在哪裡,如果需要序列化可使用transient關鍵字。
class User implements Serializable { private static final long serialVersionUID = 8294180014912103005L; private String username; private transient String passwd; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPasswd() { return passwd; } public void setPasswd(String passwd) { this.passwd = passwd; } }
其中,passwd總是null
試試在屬性上加 @JsonIgnore,忽略掉該屬性
具體看你使用的轉json的框架,不同的框架處理的方法不一樣,建議看看文件
1.使用JSON框架內建的方法,例如Jackson提供@JsonIgnore的註解。
2.仿照JsonIgnore,自訂個註解,在轉換過程中,透過JAVA的反射和Annotated相關類,判斷並處理到,這種方法自訂能力比較強,比如可以將所有null值的都不轉換,或將日期屬性按照不同的format轉換。
3.自訂一個中間類,只包含需要轉換的屬性,然後資料對象,向中間類對象賦值,最後轉換中間類對象,這樣不包含的屬性,不會出現。
不知道是儲存在哪裡,如果需要序列化可使用transient關鍵字。
其中,passwd總是null
試試在屬性上加 @JsonIgnore,忽略掉該屬性
具體看你使用的轉json的框架,不同的框架處理的方法不一樣,建議看看文件
1.使用JSON框架內建的方法,例如Jackson提供@JsonIgnore的註解。
2.仿照JsonIgnore,自訂個註解,在轉換過程中,透過JAVA的反射和Annotated相關類,判斷並處理到,這種方法自訂能力比較強,比如可以將所有null值的都不轉換,或將日期屬性按照不同的format轉換。
3.自訂一個中間類,只包含需要轉換的屬性,然後資料對象,向中間類對象賦值,最後轉換中間類對象,這樣不包含的屬性,不會出現。