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

@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
  1. package com.jjs.util;  
  2.   
  3. import java.io.IOException;  
  4.   
  5. import org.springframework.http.HttpOutputMessage;  
  6. import org.springframework.http.converter.HttpMessageNotWritableException;  
  7.   
  8. import com.alibaba.fastjson.JSON;  
  9. import com.alibaba.fastjson.serializer.SerializerFeature;  
  10. import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;  
  11.   
  12. public class JsonHttpMessageConverter extends FastJsonHttpMessageConverter {  
  13.   
  14.     @Override  
  15.     protected void writeInternal(Object obj, HttpOutputMessage outputMessage)  
  16.             throws IOException, HttpMessageNotWritableException {  
  17.         // TODO Auto-generated method stub  
  18.         JSON.DEFFAULT_DATE_FORMAT = "yyyy-MM-dd HH";  
  19.         JSON.toJSONString(obj, SerializerFeature.WriteDateUseDateFormat);  
  20.         super.writeInternal(obj, outputMessage);  
  21.   
  22.     }  
  23.   
  24. }  

然后,将springMVC.xml(具体文件名以项目而定) 的配置修改为如下, 引用重写 了writeInternal()方法的类进行json序列化
[html]  view plain  copy
  1. <mvc:annotation-driven>  
  2.         <mvc:message-converters register-defaults="true">  
  3.             <!-- <bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter"> -->  
  4.             <bean class="com.jjs.util.JsonHttpMessageConverter">  
  5.                 <property name="supportedMediaTypes">  
  6.                     <list>  
  7.                         <value>text/html;charset=UTF-8</value>  
  8.                         <value>application/json</value>  
  9.                     </list>  
  10.                 </property>  
  11.                 <property name="features">  
  12.                     <list>  
  13.                     <value>WriteDateUseDateFormat</value>  
  14.                         <value>WriteMapNullValue</value>  
  15.                         <value>QuoteFieldNames</value>  
  16.                     </list>  
  17.                 </property>  
  18.             </bean>  
  19.         </mvc:message-converters>  
  20.     </mvc:annotation-driven>  

         记录一下,方便查看

GitHub 加速计划 / fastj / fastjson
25.69 K
6.51 K
下载
FASTJSON 2.0.x has been released, faster and more secure, recommend you upgrade.
最近提交(Master分支:3 个月前 )
c942c834 - 1 年前
5bc4709b - 1 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐