post方式时间格式统一

/ 2024-12-15

import com.fasterxml.jackson.core.JsonParser;
import com.fasterxml.jackson.databind.DeserializationContext;
import com.fasterxml.jackson.databind.JsonDeserializer;

import java.io.IOException;

public class MultiFormatDateTimeDeserializer extends JsonDeserializer {

  1. @Override
  2. public String deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
  3. String text = p.getText().trim();
  4. // 补全时间
  5. if (text.matches("^\\d{4}-\\d{2}$")) { // yyyy-MM
  6. text += "-01 00:00:00";
  7. } else if (text.matches("^\\d{4}-\\d{2}-\\d{2}$")) { // yyyy-MM-dd
  8. text += " 00:00:00";
  9. } else if (text.matches("^\\d{4}-\\d{2}-\\d{2} \\d{2}$")) { // yyyy-MM-dd HH
  10. text += ":00:00";
  11. } else if (text.matches("^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}$")) { // yyyy-MM-dd HH:mm
  12. text += ":00";
  13. }
  14. //DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
  15. return text;
  16. }

}

字段添加注解
@JsonDeserialize(using = MultiFormatDateTimeDeserializer.class)


转载请注明作者和出处,并添加本页链接。
原文链接: //pongpongkai.top/63

皖ICP备2025092356号-1 | 沪公网安备31011202021249号