diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfo.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfo.java index 5867e614..7d24e06e 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfo.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfo.java @@ -97,13 +97,6 @@ public class TableInfo { private List onUpdateListeners; private List onSetListeners; - /** - * @deprecated 该功能有更好的方式实现,此属性可能会被移除。 - */ - @Deprecated - private Map> joinTypes; - - /** * 对应 MapperXML 配置文件中 {@code } 标签下的 {@code } 标签。 */ @@ -297,21 +290,6 @@ public class TableInfo { return propertyColumnMapping.get(property); } - public Map> getJoinTypes() { - return joinTypes; - } - - public void setJoinTypes(Map> joinTypes) { - this.joinTypes = joinTypes; - } - - public void addJoinType(String fieldName, Class clazz) { - if (joinTypes == null) { - joinTypes = new HashMap<>(); - } - joinTypes.put(fieldName, clazz); - } - public Map> getAssociationType() { return associationType; } diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfoFactory.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfoFactory.java index 4c1ab6aa..09a8f42f 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfoFactory.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/table/TableInfoFactory.java @@ -48,7 +48,8 @@ import java.util.stream.Collectors; public class TableInfoFactory { - private TableInfoFactory() {} + private TableInfoFactory() { + } private static final Set> defaultSupportColumnTypes = CollectionUtil.newHashSet( int.class, Integer.class, @@ -216,12 +217,15 @@ public class TableInfoFactory { if (Collection.class.isAssignableFrom(fieldType)) { ParameterizedType genericType = (ParameterizedType) field.getGenericType(); Type actualTypeArgument = genericType.getActualTypeArguments()[0]; - tableInfo.addCollectionType(field, (Class) actualTypeArgument); + + //需排除 List List 等场景 + if (!defaultSupportColumnTypes.contains(actualTypeArgument)) { + tableInfo.addCollectionType(field, (Class) actualTypeArgument); + } } // 实体类嵌套 else if (!Map.class.isAssignableFrom(fieldType) && !fieldType.isArray()) { - // tableInfo.addJoinType(field.getName(), fieldType); tableInfo.addAssociationType(field.getName(), fieldType); } // 不支持的类型直接跳过