From 2a25716cfb1820a5901d2f72b9a49b0443ce7459 Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Mon, 01 Apr 2024 17:28:43 +0800
Subject: [PATCH] 数据同步排除geomery 类型同步
---
src/main/java/org/springblade/binlog/listener/TourBinLogListener.java | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/springblade/binlog/listener/TourBinLogListener.java b/src/main/java/org/springblade/binlog/listener/TourBinLogListener.java
index eb39319..e854e73 100644
--- a/src/main/java/org/springblade/binlog/listener/TourBinLogListener.java
+++ b/src/main/java/org/springblade/binlog/listener/TourBinLogListener.java
@@ -97,18 +97,20 @@
List<String> valueList = new ArrayList<>();
// 遍历匹配数据
dataProperty.forEach((key,value)->{
- log.info("数据类型 " + value.dataType);
+// log.info("数据类型 " + value.dataType);
if(null!=data.get(key)) {
keyList.add(key);
if (value.dataType.equals("varchar") ||
value.getDataType().equals("char")) {
valueList.add("'" + data.get(key).toString() + "'");
}else if(value.dataType.equals("text") ||
- value.dataType.equals("geometry") ||
value.dataType.equals("mediumtext") ||
value.dataType.equals("longblob")) {
byte[] bytes = (byte[])data.get(key);
valueList.add("'" + new String(bytes) + "'");
+ }else if (value.dataType.equals("geometry")) {
+ // 该类型设置空,解析异常-尚未解决
+ valueList.add("'" + null + "'");
}else if(value.dataType.equals("date") ||
value.getDataType().equals("datetime")) {
Long time = Long.parseLong(data.get(key).toString());
@@ -145,16 +147,17 @@
List<String> updateList = new ArrayList<>();
// 遍历匹配数据
dataProperty.forEach((key,value)->{
- log.info("数据类型 " + value.dataType);
+// log.info("数据类型 " + value.dataType);
if(null!=data.get(key) && !key.equals("id")) {
if (value.dataType.equals("varchar") ||
value.getDataType().equals("char")) {
updateList.add(key + " = '" + data.get(key).toString() + "'");
}else if(value.dataType.equals("text") ||
- value.dataType.equals("geometry") ||
value.dataType.equals("mediumtext")) {
byte[] bytes = (byte[])data.get(key);
updateList.add(key + " = '" + new String(bytes) + "'");
+ }else if(value.dataType.equals("geometry")) {
+ // 该类型不操作
}else if(value.dataType.equals("date") ||
value.getDataType().equals("datetime")) {
Long time = Long.parseLong(data.get(key).toString());
--
Gitblit v1.9.3