【json】Controller返回json的技巧

1. 时间格式

 

   1.1 返回yyyy-MM-dd HH:mm格式的时间

 @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
 private Date updateTime;

  1.2返回秒值("createTime": 1490171219)

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;

import java.io.IOException;
import java.util.Date;

/**
 * @Auther: aaralyn
 * @Date: 2018/7/14 09:56
 * @Description:将日期默认返回毫秒值改为默认返回到秒值 在实体的日期属性上加下面的注解
 * @JsonSerialize(using = Date2LongSerializer.class)
 */
public class Date2LongSerializer extends JsonSerializer {
    @Override
    public void serialize(Date date, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
        jsonGenerator.writeNumber(date.getTime() / 1000);
    }
}
@JsonSerialize(using = Date2LongSerializer.class)
private Date createTime;

2.不返回值为null的属性

    方式一

    在实体类上添加@JsonInclude(JsonInclude.Include.NON_NULL)

@JsonInclude(JsonInclude.Include.NON_NULL)
public class OrderMaster {}

    方式二

    在springboot配置文件中进行配置,达到全局效果

spring:
  jackson:
    default-property-inclusion: non_null

 

你可能感兴趣的:(JackSon)