一、什么是@JsonFormat
@JsonFormat用来表示json序列化的一种格式或者类型
 例如:
    @JsonFormat(shape =JsonFormat.Shape.STRING,pattern ="yyyy-MM-dd HH:mm:ss",timezone ="GMT+8")
        private LocalDate createTime;
二、为什么用@JsonFormat
   @JsonFormat注解是一个时间格式化注解,比如我们存储在mysql中的数据是date类型的,当我们读取出来封装在实体类中的时候,就会变成英文时间格式,而不是yyyy-MM-dd HH:mm:ss这样的中文时间,因此我们需要用到JsonFormat注解来格式化我们的时间。
   简而言之,将数据库中的data类型的时间格式化为yyyy-MM-dd HH:mm:ss。
二、怎么使用@JsonFormat
1、从maven导入
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.9.2</version>
</dependency>
2、Params
- 
shape: 表示序列化后的一种类型,枚举(详见后)
 - 
pattern: 表示日期的格式
 - 
timezone: 默认是GMT,中国需要GMT+8
 - 
locale: 根据位置序列化的一种格式
 
		
    public static enum Shape {
            ANY,
            NATURAL,
            SCALAR,
            ARRAY,
            OBJECT,
            NUMBER,
            NUMBER_FLOAT,
            NUMBER_INT,
            STRING,
            BOOLEAN;
     
            private Shape() {
            }
     
            public boolean isNumeric() {
                return this == NUMBER || this == NUMBER_INT || this == NUMBER_FLOAT;
            }
     
            public boolean isStructured() {
                return this == OBJECT || this == ARRAY;
            }
        }
参考:如何使用@JsonFormat
相关文章
暂无评论...
