
io.lsn.spring.common.json.serializer.CustomTimestampDeserializer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of common Show documentation
Show all versions of common Show documentation
Logisfera Nova Commons holds a bunch of useful helpers such as validators, conditional register
process, soap logging handler
The newest version!
package io.lsn.spring.common.json.serializer;
import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class CustomTimestampDeserializer extends JsonDeserializer {
@Override
public Date deserialize(JsonParser jsonparser,
DeserializationContext deserializationcontext) throws IOException, JsonProcessingException {
if (jsonparser.getText() == null || "".equals(jsonparser.getText().trim())) {
return null;
}
String dateFormat = "yyyy-MM-dd";
String date = jsonparser.getText().replace(" ", "T");
if (jsonparser.getText().length() == 19) {
dateFormat = "yyyy-MM-dd'T'HH:mm:ss";
} else if (jsonparser.getText().length() == 16) {
dateFormat = "yyyy-MM-dd'T'HH:mm";
} else if (jsonparser.getText().length() > 16 && jsonparser.getText().length() != 19) {
dateFormat = "yyyy-MM-dd'T'HH:mm";
date = jsonparser.getText().substring(0, 16).replace(" ", "T");
}
SimpleDateFormat format = new SimpleDateFormat(dateFormat);
try {
return format.parse(date);
} catch (ParseException e) {
throw new RuntimeException(e);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy