From 2d0b1b3da347f201cfe608e426fb2b7fdb9629a7 Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Fri, 17 Aug 2018 17:13:27 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
src/main/java/com/moral/common/convert/StringToDateConverter.java | 41 ++++++++++++++++++++++++++++++-----------
1 files changed, 30 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/moral/common/convert/StringToDateConverter.java b/src/main/java/com/moral/common/convert/StringToDateConverter.java
index d08bc68..0b16948 100644
--- a/src/main/java/com/moral/common/convert/StringToDateConverter.java
+++ b/src/main/java/com/moral/common/convert/StringToDateConverter.java
@@ -1,28 +1,47 @@
package com.moral.common.convert;
+import com.moral.common.exception.BusinessException;
import com.moral.common.util.StringUtils;
+import org.apache.log4j.Logger;
import org.springframework.core.convert.converter.Converter;
-
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.Date;
/**
- * ������������������������������
- * @author byshome
- * @version $Id: StringToDateConverter.java, v 0.1 2015���9���24��� ������7:19:41 byshome Exp $
+ *
+ * ������������������������������:
+ * @author: fengxiang
+ * @date: 2018/7/30 14:40
*/
public class StringToDateConverter implements Converter<String, Date> {
-// private static final String dateFormat = "yyyy-MM-dd HH:mm:ss";
-// private static final String shortDateFormat = "yyyy-MM-dd";
-
+ private static Logger log = Logger.getLogger(StringToDateConverter.class);
+ private static final String dateFormat = "yyyy-MM-dd HH:mm:ss";
+ private static SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormat);
/**
* @see org.springframework.core.convert.converter.Converter#convert(java.lang.Object)
*/
@Override
public Date convert(String source) {
- if(StringUtils.isNullOrEmpty(source)){
- throw new RuntimeException(String.format("parser %s to Date fail", source));
- };
- return new Date(Long.parseLong(source));
+ try {
+ if(StringUtils.isNullOrEmpty(source)){
+ throw new BusinessException(String.format("parser %s to Date fail", source));
+ }
+ if(StringUtils.isNumericZidai(source)) {
+ source = source.length() == 10 ? source+"000" : source;
+ return new Date(Long.parseLong(source));
+ } else {
+ return simpleDateFormat.parse(source);
+ }
+ } catch (ParseException e) {
+ e.printStackTrace();
+ log.error(e.getMessage());
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error(e.getMessage());
+ }
+
+ return null;
}
}
\ No newline at end of file
--
Gitblit v1.8.0