zoukankan      html  css  js  c++  java
  • 使用Jackson时转换JSON时,日期格式设置

    1.普通的方式:

    默认是转成timestamps形式的,通过下面方式可以取消timestamps。

    objectMapper.configure(SerializationConfig.Feature.WRITE_DATES_AS_TIMESTAMPS, false);
     
     这样将使时间生成使用所谓的use a [ISO-8601 ]-compliant notation, 输出类似如下格式的时间: "1970-01-01T00:00:00.000+0000".

    当然也可以自定义输出格式:

     
    objectMapper.getSerializationConfig().setDateFormat(myDateFormat);
     
    myDateFormat对象为java.text.DateFormat,具体使用清查java API

    SimpleDateFormat myDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    objectMapper.getSerializationConfig().setDateFormat(myDateFormat);
    
    

    2.annotaion的注释方式:

    先定义自己需要的格式,例如:

    Java代码

    import java.io.IOException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import org.codehaus.jackson.JsonGenerator;
    import org.codehaus.jackson.JsonProcessingException;
    import org.codehaus.jackson.map.JsonSerializer;
    import org.codehaus.jackson.map.SerializerProvider;
    
    /**
     *  java日期对象经过Jackson库转换成JSON日期格式化自定义类
     * @author yuruli
     * @date 2010-7-25
     */
    public class CustomDateSerializer extends JsonSerializer {
    
            @Override
            public void serialize(Date value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException {
                    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
                    String formattedDate = formatter.format(value);
                    jgen.writeString(formattedDate);
            }
    }

    然后在你的POJO上找到日期的get方法

    @JsonSerialize(using = CustomDateSerializer.class)
    public Date getCreateAt() {
         return createAt;
    }
  • 相关阅读:
    Online
    C语言的原码,反码,补码
    PHP常用函数
    [javascript] npx 命令简单使用
    [javascript] vue的实例生命周期钩子函数
    curl扩展post请求http接口报错:failed creating formpost data
    [javascript] 基于elementui的后台界面开发
    [javascript] var let const声明变量的区别
    [PHP] 实现oauth下的单点登陆
    [日常] KRA与KPI 绩效考核
  • 原文地址:https://www.cnblogs.com/stromluo/p/8543694.html
Copyright © 2011-2022 走看看