From b08727b013ecc980cbc5c9170e091a85de0f7a2c Mon Sep 17 00:00:00 2001 From: Binary Wang Date: Tue, 27 Jun 2023 14:02:42 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20gson=E5=BA=8F=E5=88=97=E5=8C=96?= =?UTF-8?q?=E6=97=B6=E8=B7=B3=E8=BF=87File=E7=B1=BB=E5=9E=8B=E7=9A=84?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../weixin/mp/util/json/WxMpGsonBuilder.java | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java index 53c39a0c4..3aced61d3 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpGsonBuilder.java @@ -1,21 +1,25 @@ package me.chanjar.weixin.mp.util.json; +import com.google.gson.ExclusionStrategy; +import com.google.gson.FieldAttributes; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import me.chanjar.weixin.mp.bean.*; import me.chanjar.weixin.mp.bean.card.WxMpCard; import me.chanjar.weixin.mp.bean.card.WxMpCardResult; +import me.chanjar.weixin.mp.bean.card.membercard.WxMpMemberCardActivateTempInfoResult; +import me.chanjar.weixin.mp.bean.card.membercard.WxMpMemberCardUpdateResult; +import me.chanjar.weixin.mp.bean.card.membercard.WxMpMemberCardUserInfoResult; import me.chanjar.weixin.mp.bean.datacube.WxDataCubeUserCumulate; import me.chanjar.weixin.mp.bean.datacube.WxDataCubeUserSummary; import me.chanjar.weixin.mp.bean.kefu.WxMpKefuMessage; import me.chanjar.weixin.mp.bean.material.*; -import me.chanjar.weixin.mp.bean.card.membercard.WxMpMemberCardActivateTempInfoResult; -import me.chanjar.weixin.mp.bean.card.membercard.WxMpMemberCardUpdateResult; -import me.chanjar.weixin.mp.bean.card.membercard.WxMpMemberCardUserInfoResult; import me.chanjar.weixin.mp.bean.result.*; import me.chanjar.weixin.mp.bean.subscribe.WxMpSubscribeMessage; import me.chanjar.weixin.mp.bean.template.WxMpTemplateIndustry; import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage; + +import java.io.File; import java.util.Objects; /** @@ -63,6 +67,22 @@ public class WxMpGsonBuilder { INSTANCE.registerTypeAdapter(WxMpMemberCardUserInfoResult.class, new WxMpMemberCardUserInfoResultGsonAdapter()); INSTANCE.registerTypeAdapter(WxMpMemberCardUpdateResult.class, new WxMpMemberCardUpdateResultGsonAdapter()); INSTANCE.registerTypeAdapter(WxMpMemberCardActivateTempInfoResult.class, new WxMpMemberCardActivateTempInfoResultGsonAdapter()); + + INSTANCE.setExclusionStrategies(new ExclusionStrategy() { + @Override + public boolean shouldSkipField(FieldAttributes fieldAttributes) { + return false; + } + + @Override + public boolean shouldSkipClass(Class aClass) { + if (aClass == File.class) { + return true; + } + + return false; + } + }); } public static Gson create() {