json fasterxml date 日期格式 設定
阿新 • • 發佈:2019-02-05
預設情況下,fasterxml json只支援幾種format,但是肯定不支援"yyyy-MM-dd HH:mm:ss"格式,所以在使用中,如果碰到一下的error,就要自己指定date format了。
error 輸出:
om.fasterxml.jackson.databind.exc.InvalidFormatException: Can not construct instance of java.util.Date from String value '2017-04-25 18:20:02': not a valid representation (error: Failed to parse Date value '2017-04-25 18:20:02': Can not parse date "2017-04-25
18:20:02": not compatible with any of standard forms ("yyyy-MM-dd'T'HH:mm:ss.SSSZ", "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", "EEE, dd MMM yyyy HH:mm:ss zzz", "yyyy-MM-dd"))
解決方法:
在你的java 中,加入下面的code
import com.fasterxml.jackson.annotation.*;
@JsonIgnoreProperties(ignoreUnknown = true)
public class EmployeeProfile{
private String name;
private Integer age;
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date creation_date;
}
同時注意要依賴fasterxml的那幾個包。
如下是maven的例子:
<!-- if use jackson-annotations-*.jar,jackson-core-.jar,jackson-databind-.jar, then it need config StringHttpMessageConverter and MappingJackson2HttpMessageConverter in spring-mvc.xml --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>${jackson.version}</version> </dependency>