springmvc返回json格式化日期对象

我们用ajax请求后台springmvc,后台返回对象,会默认给我们转json,日期对象的话,默认会调用toString()搞成一个非常难看的格式;

这时候,我们可以自定义json序列方式来转下日期的格式;

具体操作方法,先定义两个自定义日期处理类:
CustomDateTimeSerializer:

package com.java1234.entity;

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

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

/**
 * 自定义返回JSON 数据格式中日期格式化处理
 * @author java1234 小锋 老师
 *
 */
public class CustomDateTimeSerializer extends JsonSerializer<Date>{

	@Override
	public void serialize(Date value, JsonGenerator gen, SerializerProvider serializers)
			throws IOException {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
		gen.writeString(sdf.format(value));  
	}

}

CustomDateSerializer类:

package com.java1234.entity;

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

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

/**
 * 自定义返回JSON 数据格式中日期格式化处理
 * @author Administrator
 *
 */
public class CustomDateSerializer extends JsonSerializer<Date>{

	@Override
	public void serialize(Date value, JsonGenerator gen, SerializerProvider serializers)
			throws IOException, JsonProcessingException {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  
		gen.writeString(sdf.format(value));  
	}

}

我们平时基本就这两种转换法:

然后我们在实体类的日期属性的get方法上注解@JsonSerialize(using=CustomDateTimeSerializer.class)

@JsonSerialize(using=CustomDateTimeSerializer.class)
public Date getBuyTime() {
	return buyTime;
}

这样搞就OK了,返回的json串处理日期会调用这个自定义类,来达到格式化日期;

在这里插入图片描述
效果可以的哈。

关注锋哥公众号【Java资料站】,每日发布最新Java资讯和技术贴;
[Java资料站公众号]
需要交流,加锋哥微信号 QQ527085608 :
锋哥微信号

猜你喜欢

转载自blog.csdn.net/caoli201314/article/details/106793801