diff --git a/protocol/src/main/java/com/zfoo/protocol/util/FieldUtils.java b/protocol/src/main/java/com/zfoo/protocol/util/FieldUtils.java index 6ff4a8f7..d726bb94 100644 --- a/protocol/src/main/java/com/zfoo/protocol/util/FieldUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/util/FieldUtils.java @@ -54,10 +54,6 @@ public abstract class FieldUtils { var methodName = "set" + StringUtils.capitalize(fieldName); - if (clazz.isRecord()) { - return methodName; - } - try { clazz.getDeclaredMethod(methodName, field.getType()); return methodName; diff --git a/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java b/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java index fbb19cce..1d60a53c 100644 --- a/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java +++ b/storage/src/main/java/com/zfoo/storage/manager/StorageManager.java @@ -104,6 +104,9 @@ public class StorageManager implements IStorageManager { var allRelevantClass = new HashSet>(); resourceDefinitionMap.values().forEach(it -> allRelevantClass.addAll(ClassUtils.relevantClass(it.getClazz()))); for (var clazz : allRelevantClass) { + if (clazz.isRecord()) { + continue; + } var fieldList = ReflectionUtils.notStaticAndTransientFields(clazz); for (var field : fieldList) { if (Modifier.isPublic(field.getModifiers())) { diff --git a/storage/src/test/java/com/zfoo/storage/ApplicationTest.java b/storage/src/test/java/com/zfoo/storage/ApplicationTest.java index 8cdccf6b..f8e9f795 100644 --- a/storage/src/test/java/com/zfoo/storage/ApplicationTest.java +++ b/storage/src/test/java/com/zfoo/storage/ApplicationTest.java @@ -20,6 +20,7 @@ import com.zfoo.storage.manager.StorageManager; import com.zfoo.storage.model.IStorage; import com.zfoo.storage.resource.StudentCsvResource; import com.zfoo.storage.resource.StudentResource; +import com.zfoo.storage.resource.TeacherResource; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -54,6 +55,7 @@ public class ApplicationTest { List list = StorageContext.getList(StudentResource.class); //根据主键获取数据 StudentResource studentResource = StorageContext.get(StudentResource.class, 1001); + TeacherResource teacherResource = StorageContext.get(TeacherResource.class, 1001); //获取名字索引列表 List nameIndexList = StorageContext.getIndexes(StudentResource.class, StudentResource::getName, "james1"); //获取年龄索引列表