天天看點

使用 jackson序列格式化日期

【1】自定義時間,序列化類

package com.fsti.bm.utils;

import java.io.IOException;
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;

/**
 * 自定義時間,序列化類
 * 
 * yyyy-MM-dd hh:mm:ss
 * 
 * @author deniro
 */
public class CustomDateSerializer extends JsonSerializer<Date> {

	@Override
	public void serialize(Date value, JsonGenerator jgen,
			SerializerProvider provider) throws IOException,
			JsonProcessingException {
		jgen.writeString(DateUtils.toStr(value));

	}
}
           

【2】POJO添加序列化注解

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fsti.bm.utils.CustomDateSerializer;

@JsonSerialize(using = CustomDateSerializer.class)
           

注意:該類必須實作 java.io.Serializable

如果使用hibernate,則hbm配置檔案相應的字段類型,必須是 type="timestamp"

繼續閱讀