【8.3.0】【scanner】类解析增加Map类型

master
stylefeng 2024-08-07 13:57:37 +08:00
parent 97c18870d3
commit d066a513c2
3 changed files with 15 additions and 4 deletions

View File

@ -65,10 +65,15 @@ public enum FieldTypeEnum {
*/
WITH_UNKNOWN_GENERIC(60),
/**
* MapMap<String, Object>Map<String, SysUser>
*/
MAP(70),
/**
*
*/
OTHER(70);
OTHER(80);
FieldTypeEnum(Integer code) {
this.code = code;

View File

@ -13,6 +13,7 @@ import lombok.extern.slf4j.Slf4j;
import java.lang.reflect.Field;
import java.lang.reflect.Type;
import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Set;
/**
@ -104,9 +105,14 @@ public class ClassMetaFactory {
return rawTypeMetadata;
}
// 6. 其他情况,返回最基本的数据
// 6. Map的类型
else if (FieldTypeEnum.MAP.equals(classParseResult.getFieldTypeEnum())) {
return MetadataCreateFactory.createBaseClassMetadata(Map.class, uuid);
}
// 7. 其他情况,返回最基本的数据
else {
return MetadataCreateFactory.createBaseClassMetadata((Class<?>) type, uuid);
return MetadataCreateFactory.createBaseClassMetadata(String.class, uuid);
}
}

View File

@ -132,7 +132,7 @@ public class AdvancedClassTypeUtil {
// 如果是map类型则认定为基本类型不做处理不解析他的元数据
else if (Map.class.isAssignableFrom(rawTypeClass)) {
return new ClassParseResult(FieldTypeEnum.BASIC, null);
return new ClassParseResult(FieldTypeEnum.MAP, null);
}
// 如果泛型的主体是实体包装类