From 8f8be198f554c0cf190385f8372bf62e3c4ffd17 Mon Sep 17 00:00:00 2001 From: Mlxa0324 <mlx950324@163.com> Date: Thu, 17 Nov 2022 23:42:14 +0800 Subject: [PATCH] =?UTF-8?q?=E8=80=83=E8=AF=95=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ibeetl/admin/core/util/BeanUtil.java | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanUtil.java b/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanUtil.java index ce40a4db..77f66df9 100644 --- a/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanUtil.java +++ b/admin-core/src/main/java/com/ibeetl/admin/core/util/BeanUtil.java @@ -16,7 +16,6 @@ import javax.validation.constraints.NotNull; import java.lang.reflect.Field; import java.util.*; import java.util.concurrent.ConcurrentHashMap; -import java.util.stream.Collectors; /** * <p> @@ -111,21 +110,16 @@ public class BeanUtil extends cn.hutool.core.bean.BeanUtil { public static <T extends BaseEntity> Map<String, String> processExcelAnnotationToMap(@NotNull Class<T> clazz) { Map<String, String> result = new ConcurrentHashMap<>(16); - // 过滤有指定注解的属性 - Set<Field> filterFields = Arrays.stream(clazz.getDeclaredFields()) + Arrays.stream(clazz.getDeclaredFields()) + // 过滤有指定注解的属性 .filter(declaredField -> ObjectUtil.isNotNull(AnnotationUtils.findAnnotation(declaredField, ExcelProperty.class))) - .collect(Collectors.toSet()); - - // 根据index属性排序,并放置到Map的返回值中 - filterFields.stream().sorted(Comparator.comparingInt(o -> AnnotationUtils.findAnnotation(o, ExcelProperty.class).index())) + // 根据index属性排序,并放置到Map的返回值中 + .sorted(Comparator.comparingInt(o -> AnnotationUtils.findAnnotation(o, ExcelProperty.class).index())) + // 有序执行 .forEachOrdered(field -> { ExcelProperty annotation = AnnotationUtils.findAnnotation(field, ExcelProperty.class); String title = annotation.value()[0]; - String name = field.getName(); - // 防止覆盖 - if (!result.containsKey(name)) { - result.put(name, title); - } + result.put(field.getName(), title); }); return result;