您的位置:首页 > 编程语言 > Java开发

springmvc fastjson 反序列化时间格式化

2017-03-28 13:56 281 查看
        第一种情况是从后台拿到数据,进行反序列化,反序列化格式时间:试了一下很多网上的方法,最后发现还是在实体类上面的日期字段加上如下注解,可以完成格式化操作,否则默认就都是时间戳的格式:

@JSONField (format="yyyy-MM-dd HH:mm:ss")
public Date birthday;

@JSONField (format="yyyy-MM-dd HH:mm:ss")
public Date birthday;


      第二种情况是:response返回给前段的时间格式,一开始是时间戳,需要转成想要的格式yyyy-MM-dd重写方法:

[java] view
plain copy

package com.jjs.util;  

  

import java.io.IOException;  

  

import org.springframework.http.HttpOutputMessage;  

import org.springframework.http.converter.HttpMessageNotWritableException;  

  

import com.alibaba.fastjson.JSON;  

import com.alibaba.fastjson.serializer.SerializerFeature;  

import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;  

  

public class JsonHttpMessageConverter extends FastJsonHttpMessageConverter {  

  

    @Override  

    protected void writeInternal(Object obj, HttpOutputMessage outputMessage)  

            throws IOException, HttpMessageNotWritableException {  

        // TODO Auto-generated method stub  

        JSON.DEFFAULT_DATE_FORMAT = "yyyy-MM-dd HH";  

        JSON.toJSONString(obj, SerializerFeature.WriteDateUseDateFormat);  

        super.writeInternal(obj, outputMessage);  

  

    }  

  

}  

然后,将springMVC.xml(具体文件名以项目而定) 的配置修改为如下, 引用重写了writeInternal()方法的类进行json序列化

[html] view
plain copy

<mvc:annotation-driven>  

        <mvc:message-converters register-defaults="true">  

            <!-- <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"> -->  

            <bean class="com.jjs.util.JsonHttpMessageConverter">  

                <property name="supportedMediaTypes">  

                    <list>  

                        <value>text/html;charset=UTF-8</value>  

                        <value>application/json</value>  

                    </list>  

                </property>  

                <property name="features">  

                    <list>  

                    <value>WriteDateUseDateFormat</value>  

                        <value>WriteMapNullValue</value>  

                        <value>QuoteFieldNames</value>  

                    </list>  

                </property>  

            </bean>  

        </mvc:message-converters>  

    </mvc:annotation-driven>  

         记录一下,方便查看
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring mvc 格式化