From 7e666897e822902aa4ed9ef3bf2e289279a8c0aa Mon Sep 17 00:00:00 2001 From: fuhouyin Date: Mon, 9 Oct 2023 11:48:23 +0800 Subject: [PATCH] :tada: add new method of EntityUtil --- src/main/java/utils/EntityUtil.java | 32 +++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/src/main/java/utils/EntityUtil.java b/src/main/java/utils/EntityUtil.java index 92d1ea0..f816bde 100644 --- a/src/main/java/utils/EntityUtil.java +++ b/src/main/java/utils/EntityUtil.java @@ -1,7 +1,9 @@ package utils; import java.lang.reflect.Field; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; public class EntityUtil { @@ -19,4 +21,34 @@ public class EntityUtil { } return result; } + + /** + * 获取实体类中所有不为空的字段名 + */ + public static List findNotNullFields(Object obj) { + List notNullFields = new ArrayList<>(); + Class clazz = obj.getClass(); + for (Field field : clazz.getDeclaredFields()) { + field.setAccessible(true); + try { + Object value = field.get(obj); + if (value!= null) { + notNullFields.add(field.getName()); + } + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + return notNullFields; + } + + /** + * 根据字段名获取值 + */ + public static Object getFieldValue(String fieldName, Object obj) throws Exception { + Class clazz = obj.getClass(); + Field field = clazz.getDeclaredField(fieldName); + field.setAccessible(true); + return field.get(obj); + } }