diff --git a/bonus-common/bonus-common-core/pom.xml b/bonus-common/bonus-common-core/pom.xml index 6e61446..40c0c43 100644 --- a/bonus-common/bonus-common-core/pom.xml +++ b/bonus-common/bonus-common-core/pom.xml @@ -153,6 +153,11 @@ itext-asian 5.2.0 + + com.google.code.gson + gson + 2.8.9 + org.mockito mockito-core diff --git a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/web/domain/AjaxResult.java b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/web/domain/AjaxResult.java index 5606315..3f69a67 100644 --- a/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/web/domain/AjaxResult.java +++ b/bonus-common/bonus-common-core/src/main/java/com/bonus/common/core/web/domain/AjaxResult.java @@ -4,6 +4,7 @@ import java.util.HashMap; import java.util.Objects; import com.bonus.common.core.constant.HttpStatus; import com.bonus.common.core.utils.StringUtils; +import com.google.gson.Gson; /** * 操作消息提醒 @@ -213,4 +214,25 @@ public class AjaxResult extends HashMap super.put(key, value); return this; } + + /** + * 获取data字段并将其转换为指定类型的对象 + * + * @param clazz 目标类 + * @param 目标类型 + * @return 转换后的对象,或null如果data字段为空 + */ + public T getDataAs(Class clazz) { + Object data = this.get(DATA_TAG); // 获取data字段 + if (data == null) { + return null; // 如果data为空,返回null + } + // 创建Gson实例 + Gson gson = new Gson(); + + // 将data从LinkedHashMap转换为指定类型的对象 + return gson.fromJson(gson.toJson(data), clazz); + } + + }