fix: field query 方式不支持集合子类型。

This commit is contained in:
Suomm 2023-06-09 20:00:32 +08:00
parent c86ab8d468
commit b087dd0b92
2 changed files with 9 additions and 0 deletions

View File

@ -105,6 +105,10 @@ public class ClassUtil {
|| clazz == double[].class; || clazz == double[].class;
} }
public static boolean canInstance(int mod) {
return !Modifier.isAbstract(mod) || !Modifier.isInterface(mod);
}
public static <T> T newInstance(Class<T> clazz) { public static <T> T newInstance(Class<T> clazz) {
try { try {

View File

@ -31,6 +31,7 @@ public class MapperUtil {
} }
@SuppressWarnings({"rawtypes", "unchecked"})
public static <R> void queryFields(BaseMapper<?> mapper, List<R> list, Consumer<FieldQueryBuilder<R>>[] consumers) { public static <R> void queryFields(BaseMapper<?> mapper, List<R> list, Consumer<FieldQueryBuilder<R>>[] consumers) {
if (CollectionUtil.isEmpty(list) || ArrayUtil.isEmpty(consumers) || consumers[0] == null) { if (CollectionUtil.isEmpty(list) || ArrayUtil.isEmpty(consumers) || consumers[0] == null) {
return; return;
@ -69,6 +70,10 @@ public class MapperUtil {
private static Class<?> getWrapType(Class<?> type) { private static Class<?> getWrapType(Class<?> type) {
if (ClassUtil.canInstance(type.getModifiers())) {
return type;
}
if (List.class.isAssignableFrom(type)) { if (List.class.isAssignableFrom(type)) {
return ArrayList.class; return ArrayList.class;
} }