@JsonIgnore注解和@JsonIgnoreProperties注解的使用


問題由來:
springboot項目中定義了很多類,我們在rest返回中直接返回或者在返回對象中使用這些類,spring已經使用jackson自動幫我們完成這些的to json。但是有時候自動轉的json內容太多,或者格式不符合我們的期望,因此需要調整類的to json過程,或者說希望自定義類的json過程。


@JsonIgnoreProperties的使用
項目中我們經常會遇到想要的和定義的pojo不相符的情況,這個時候, 我們可以直接通過構造map方法返回, 或者定義在映射文件里自定義映射集。 另外,還可以通過注解的方式修飾pojo的屬性, 常用的注解有:

@JsonIgnoreProperties、
@JsonIgnore、
@JsonFormat。

@JsonIgnore注解用來忽略某些字段,可以用在變量或者Getter方法上,用在Setter方法時,和變量效果一樣。這個注解一般用在我們要忽略的字段上。

@JsonIgnoreProperties(ignoreUnknown = true),將這個注解寫在類上之后,就會忽略類中不存在的字段。這個注解還可以指定要忽略的字段,例如@JsonIgnoreProperties({ “password”, “secretKey” })

@JsonFormat可以幫我們完成格式轉換。例如對於Date類型字段,如果不適用JsonFormat默認在rest返回的是long,如果我們使用@JsonFormat(timezone = “GMT+8”, pattern = “yyyy-MM-dd HH:mm:ss”),就返回"2018-11-16 22:58:15"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM