From 98109e98d22d14fee4d9aa3d2fd0b41297a4ea52 Mon Sep 17 00:00:00 2001 From: ruying408 <1877972603@qq.com> Date: Sat, 29 Mar 2025 15:55:54 +0800 Subject: [PATCH] =?UTF-8?q?upgrade=EF=BC=9A=E5=8D=87=E7=BA=A7autoable?= =?UTF-8?q?=E7=89=88=E6=9C=AC,=E7=A7=BB=E9=99=A4=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E6=95=B0=E6=8D=AE=E5=BA=93=E7=B1=BB=E5=9E=8B=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...CustomJavaTypeToDatabaseTypeConverter.java | 53 ------------------- 1 file changed, 53 deletions(-) delete mode 100644 src/main/java/com/cool/core/autotable/CustomJavaTypeToDatabaseTypeConverter.java diff --git a/src/main/java/com/cool/core/autotable/CustomJavaTypeToDatabaseTypeConverter.java b/src/main/java/com/cool/core/autotable/CustomJavaTypeToDatabaseTypeConverter.java deleted file mode 100644 index 897daf3..0000000 --- a/src/main/java/com/cool/core/autotable/CustomJavaTypeToDatabaseTypeConverter.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.cool.core.autotable; - -import java.lang.reflect.Field; -import java.util.Arrays; -import java.util.List; -import org.dromara.autotable.annotation.ColumnType; -import org.dromara.autotable.core.constants.DatabaseDialect; -import org.dromara.autotable.core.converter.DatabaseTypeAndLength; -import org.dromara.autotable.core.converter.JavaTypeToDatabaseTypeConverter; -import org.dromara.autotable.core.strategy.pgsql.data.PgsqlDefaultTypeEnum; -import org.dromara.autotable.core.utils.StringUtils; -import org.dromara.autotable.core.utils.TableBeanUtils; -import org.springframework.stereotype.Component; - -@Component -public class CustomJavaTypeToDatabaseTypeConverter implements JavaTypeToDatabaseTypeConverter { - - /** - * 重新 java转数据库类型 - * 兼容 mybatisflex 不兼容 postgresql 的json类型问题 - */ - @Override - public DatabaseTypeAndLength convert(String databaseDialect, Class clazz, Field field) { - - ColumnType column = TableBeanUtils.getColumnType(field); - // 设置了类型 - if (column != null) { - String type = column.value(); - Integer length = column.length() > -1 ? column.length() : null; - Integer decimalLength = column.decimalLength() > -1 ? column.decimalLength() : null; - List values = Arrays.asList(column.values()); - // 如果明确指定了类型名,直接替换 - if (StringUtils.hasText(type)) { - if (DatabaseDialect.PostgreSQL.equals(databaseDialect) && - type.equalsIgnoreCase("json")) { - // json 类型在 postgresql 处理成 text - PgsqlDefaultTypeEnum typeEnum = PgsqlDefaultTypeEnum.TEXT; - return new DatabaseTypeAndLength(typeEnum.getTypeName(), typeEnum.getDefaultLength(), typeEnum.getDefaultLength(), values); - } - return new DatabaseTypeAndLength(type, length, decimalLength, values); - } - // 如果没有指定明确的类型名,但是却指定了长度。那么使用默认类型+指定长度 - if (length != null || decimalLength != null) { - DatabaseTypeAndLength typeAndLength = getDatabaseTypeAndLength(databaseDialect, clazz, field); - typeAndLength.setLength(length); - typeAndLength.setDecimalLength(decimalLength); - return typeAndLength; - } - } - // 其他情况,使用默认类型 - return getDatabaseTypeAndLength(databaseDialect, clazz, field); - } -}