Hibernate JPA中@Transient、@JsonIgnoreProperties、@JsonIgnore、@JsonFormat、@JsonSerialize等註解解釋

一、@Transientjava

@Transient表示該屬性並不是一個到數據庫表的字段的映射,ORM框架將忽略該屬性;
若是一個屬性並不是數據庫表的字段映射,就務必將其標示爲@Transient,不然ORM框架默認其註解爲@Basic;數據庫

//表示該字段在數據庫表中沒有json

@Transient
public int getAge() {
 return 1+1;
}框架

 

Jackson相關:spa

二、@JsonIgnorePropertiesorm

此註解是類註解,做用是json序列化時將java bean中的一些屬性忽略掉,序列化和反序列化都受影響。get

 

三、@JsonIgnore序列化

此註解用於屬性或者方法上(最好是屬性上),做用和上面的@JsonIgnoreProperties同樣。方法

 

四、@JsonFormat數據

此註解用於屬性或者方法上(最好是屬性上),能夠方便的把Date類型直接轉化爲咱們想要的模式,好比@JsonFormat(pattern = "yyyy-MM-dd HH-mm-ss")

 

五、@JsonSerialize

此註解用於屬性或者getter方法上,用於在序列化時嵌入咱們自定義的代碼,好比序列化一個double時在其後面限制兩位小數點。

 

六、@JsonDeserialize

此註解用於屬性或者setter方法上,用於在反序列化時能夠嵌入咱們自定義的代碼,相似於上面的@JsonSerialize

相關文章
相關標籤/搜索