Android-converts an object class into a base class of Json and Map, android-json
Package com. newair. talk. base; import android. text. textUtils; import com. google. gson. gson; import java. lang. reflect. field; import java. util. collections; import java. util. hashMap; import java. util. map;/*** public request */public class BaseRequest {/*** converts an object class to a request parameter, return ** @ return */public String getJsonParams () {String jsonStr = new Gson (). toJson (this); if (TextUtils. isEmpty (jsonStr) {jsonStr = "";} Return jsonStr;}/*** converts an object class to a request parameter and returns ** @ return */public map <String, string> getMapParams () {Class <? Extends BaseRequest> clazz = this. getClass (); Class <? Extends Object> superclass = clazz. getSuperclass (); Field [] fields = clazz. getDeclaredFields (); Field [] superFields = superclass. getDeclaredFields (); if (fields = null | fields. length = 0) {return Collections. emptyMap ();} Map <String, String> params = new HashMap <String, String> (); try {for (Field field: fields) {Field. setAccessible (true); params. put (field. getName (), String. valueOf (field. get (this);} for (Field superField: superFields) {superField. setAccessible (true); params. put (superField. getName (), String. valueOf (superField. get (this) ;}} catch (IllegalAccessException e) {e. printStackTrace ();} catch (IllegalArgumentException e) {e. printStackTrace () ;}return params ;}}