package th.co.muangthai.endrprint.util; import org.apache.log4j.Logger; import org.codehaus.jackson.JsonGenerator; import org.codehaus.jackson.JsonProcessingException; import org.codehaus.jackson.map.JsonSerializer; import org.codehaus.jackson.map.SerializerProvider; import org.springframework.stereotype.Component; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; @Component public class JsonDateSerializer extends JsonSerializer { Logger log = Logger.getLogger(JsonDateSerializer.class); private static final SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy", VSMUtil.LOCALE); private static final SimpleDateFormat dateFormat2 = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss", VSMUtil.LOCALE); private static final SimpleDateFormat timeFormat = new SimpleDateFormat("HH:mm:ss", VSMUtil.LOCALE); @Override public void serialize(Date date, JsonGenerator gen, SerializerProvider provider) throws IOException, JsonProcessingException { String formattedDate = dateFormat.format(date); if(!"00:00:00".equals(timeFormat.format(date))){ formattedDate = dateFormat2.format(date); } log.info("JsonDateSerializer > " + formattedDate); gen.writeString(formattedDate); } }