配置文件如下:
<bean class="com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json</value>
</list>
</property>
<property name="features">
<list>
<value>WriteDateUseDateFormat</value>
</list>
</property>
</bean>
WriteDateUseDateFormat默认日期格式为yyyy-MM-dd HH:mm:ss,如果我的系统统一格式为 yyyy/MM/dd HH:mm:ss,我该怎么配置
------解决思路----------------------
JAVA时间格式化处理
日期格式化
import java.util.Date;
import java.text.SimpleDateFormat;
class dayTime
{
public static void main(String args[])
{
Date nowTime=new Date();
System.out.println(nowTime);
SimpleDateFormat time=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println(time.format(nowTime));
}
}
------解决思路----------------------
在那个变量头上加
@JSONField(format="yyyy/MM/dd")这样有用不~
------解决思路----------------------
继承FastJsonHttpMessageConverter,重写里面的方法,使用你重新实现的Converter就可以了
------解决思路----------------------
除楼上各位的方法外,你也可以在转json之前,先转成自己的固定格式,然后去做json转换
------解决思路----------------------
哦......要全局的啊?
网上找到个
SerializeConfig sc = new SerializeConfig();
sc.put(Date.class, new SimpleDateFormatSerializer("yyyy/MM/dd HH:mm:ss:SSS"))
然后跟4楼说的那样继承
重写writeInternal
@Override
protected void writeInternal(Object obj, HttpOutputMessage outputMessage) throws IOException,
HttpMessageNotWritableException {
OutputStream out = outputMessage.getBody();
String text = JSON.toJSONString(obj, features);
byte[] bytes = text.getBytes(charset);
out.write(bytes);
}
String text = JSON.toJSONString(obj, features);可以加入SerializeConfig
String text = JSON.toJSONString(obj, sc, features);
然后可以定义个全局的sc就行了