Browse Source

!135 Fix: Postgresql timestamptz 类型解析错误.
Merge pull request !135 from xiaomai123456/bugfix/postgresql_timestamptz_parse

AE86 1 year ago
parent
commit
0321ff61b1

+ 6 - 0
dbsyncer-connector/src/main/java/org/dbsyncer/connector/schema/TimestampValueMapper.java

@@ -8,6 +8,7 @@ import org.dbsyncer.connector.ConnectorException;
 import java.sql.Date;
 import java.sql.Timestamp;
 import java.time.LocalDateTime;
+import java.time.OffsetDateTime;
 
 /**
  * @author AE86
@@ -55,6 +56,11 @@ public class TimestampValueMapper extends AbstractValueMapper<Timestamp> {
             return new Timestamp(date.getTime());
         }
 
+        if (val instanceof OffsetDateTime) {
+            OffsetDateTime date = (OffsetDateTime) val;
+            return Timestamp.from(date.toInstant());
+        }
+
         throw new ConnectorException(String.format("%s can not find type [%s], val [%s]", getClass().getSimpleName(), val.getClass(), val));
     }
 }