java jackson 將對象轉(zhuǎn)json時,忽略子對象的某個屬性操作
我就廢話不多說了,大家還是直接看代碼吧~
//父對象
public class user implements java.io.Serializable {
@JsonIgnoreProperties(value={"addressId"})//在解析成json時,忽略子屬性的addressId字段
private Address address;
private String username;
//.........
}
//子對象
public class Address implements java.io.Serializable {
private int addressId;
private String address;
private String phone;
//..........
}
//注:當(dāng)對象是hibernate查出來的代理對象時,一對多對象會給子對象注入handler和hibernateLazyInitializer屬性,如果給jackson解析就會報錯
//在一對多或多對一字段前加上@JsonIgnoreProperties(value={"handler","hibernateLazyInitializer"})即可
補充知識:SpringMVC 返回實體對象時屏蔽某些屬性
SpringMVC 可以直接已JSON的結(jié)果返回實體對象,可是返回時是所有屬性與屬性值都會一并返回,
怎樣才能屏蔽某些屬性?方法很簡單,只要在實體對象類中要屏蔽的屬性值上加 @JsonIgnore 注解,如:
@JsonIgnore
private String authorPassword;
屬性即可被屏蔽,就不用擔(dān)心有該屬性與屬性值返回到客戶端了。
另外,如果僅僅從 MyBatis 的 mapper 里面的 select 語句中只選需要的字段而不選需要被屏蔽的字段,
這種方法行不通,因為最后還是會返回所有屬性,只不過未被選中的字段會有 null 的屬性值。
以上這篇java jackson 將對象轉(zhuǎn)json時,忽略子對象的某個屬性操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
java實現(xiàn)批量下載 多文件打包成zip格式下載
這篇文章主要為大家詳細(xì)介紹了java實現(xiàn)批量下載、將多文件打包成zip格式下載,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07
Java批量向PDF文件中添加圖像水印實現(xiàn)細(xì)節(jié)
這篇文章主要為大家介紹了Java批量向PDF文件中添加圖像水印實現(xiàn)細(xì)節(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-05-05
Java中構(gòu)造器內(nèi)部的多態(tài)方法的行為實例分析
這篇文章主要介紹了Java中構(gòu)造器內(nèi)部的多態(tài)方法的行為,結(jié)合實例形式分析了java構(gòu)造器內(nèi)部多態(tài)方法相關(guān)原理、功能及操作技巧,需要的朋友可以參考下2019-10-10

