|
@@ -0,0 +1,39 @@
|
|
|
|
+package com.winhc.bigdata.udf;
|
|
|
|
+
|
|
|
|
+import com.aliyun.odps.udf.UDF;
|
|
|
|
+import com.aliyun.odps.utils.StringUtils;
|
|
|
|
+
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
|
+import java.util.Arrays;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.regex.Pattern;
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * @Author: π
|
|
|
|
+ * @Date: 2022/6/14 11:13
|
|
|
|
+ * @Description:
|
|
|
|
+ */
|
|
|
|
+public class StringToMillis extends UDF {
|
|
|
|
+
|
|
|
|
+ public String evaluate(String date) {
|
|
|
|
+ if (StringUtils.isEmpty(date)) {
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
|
|
+ String p = "yyyy-MM-dd HH:mm:ss";
|
|
|
|
+ if (date.length() == 10) {
|
|
|
|
+ p = "yyyy-MM-dd";
|
|
|
|
+ }
|
|
|
|
+ SimpleDateFormat fm = new SimpleDateFormat(p);
|
|
|
|
+ try {
|
|
|
|
+ return String.valueOf(fm.parse(date).getTime());
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public static void main(String[] args) {
|
|
|
|
+ String s = "2022-06-14 00:00:00";
|
|
|
|
+ StringToMillis r = new StringToMillis();
|
|
|
|
+ System.out.println(r.evaluate(s));
|
|
|
|
+ }
|
|
|
|
+}
|