@DatetimeFormat是將String轉換成Date,一般前台給后台傳值時用
import org.springframework.format.annotation.DateTimeFormat; /** * 前台傳后台時, 字符串自動封裝成日期 */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date birth;
@JsonFormat(pattern=”yyyy-MM-dd”) 將Date轉換成String 一般后台傳值給前台時
import com.fasterxml.jackson.annotation.JsonFormat; /** * 后台返給前台時, 日期自動格式化 */ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date birth;
注意
@JsonFormat不僅可以完成后台到前台參數傳遞的類型轉換,還可以實現前台到后台類型轉換。
當content-type為application/json時,優先使用@JsonFormat的pattern進行類型轉換。而不會使用@DateTimeFormat進行類型轉換。
@JsonFormat注解的作用就是完成json字符串到java對象的轉換工作,與參數傳遞的方向無關。
@JsonIgnore注解
注解名稱:@JsonIgnore
作用:在實體類向前台返回數據時用來忽略不想傳遞給前台的屬性或接口。
Eg:User實體中會有字段password字段,當返回用戶信息給前台的時候,當然是不希望將password值也一並返回。所以,這個時候可以在password屬性上加上注解JsonIgnore或者,可以在User類上加上注解@JsonIgnoreProperties(value = "{password}")
