android封装map实体类,Android--将实体类转化成Json和Map的基类

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 class BaseRequest {

/**

* 将实体类转换成请求参数,json字符串形式返回

*

* @return

*/

public String getJsonParams() {

String jsonStr = new Gson().toJson(this);

if (TextUtils.isEmpty(jsonStr)) {

jsonStr = "";

}

return jsonStr;

}

/**

* 将实体类转换成请求参数,以map形式返回

*

* @return

*/

public Map 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 params = new HashMap();

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;

}

}

c++ 的类 和 类继承, 什么是c++中的基类和派生类?

闲云潭影日悠悠,物换星移几度秋 你既然已经做出了选择, 又何必去问为什么选择.鬼谷绝学的要义, 从来都不是回答, 而是抉与择 普通类 #ifndef TABTENN0_H_ #define TABTE ...

DDD的实体、值对象、聚合根的基类和接口:设计与实现

1 前置阅读 在阅读本文章之前,你可以先阅读: 什么是DDD 2 实现值对象 值对象有两个主要特征:它们没有任何标识.它们是不可变的. 我们举个例子:小明是"浙江宁波"人,小红也是 ...

派生类地址比基类地址少4(子类与基类指针强行转换的时候,值居然会发生变化,不知道Delphi BCB是不是也这样) good

大家对虚表并不陌生,都知道每个含有虚函数的类对象都有1个虚指针,但是在现实使用中,却总是因为这而调试半天,才发现原来是虚指针惹的祸.我这几天在调试代码时候也中招了,我的问题是这样的,如下图,CTree ...

C#实体对象序列化成Json并让字段的首字母小写的两种解决方法

引言:最近在工作中遇到与某些API对接的post的数据需要将对象的字段首字母小写.解决办法有两种:第一种:使用对象的字段属性设置JsonProperty来实现(不推荐,因为需要手动的修改每个字段的属性 ...

C#实体对象序列化成Json,并让字段的首字母小写

引言:最近在工作中遇到与某些API对接的post的数据需要将对象的字段首字母小写.解决办法有两种:第一种:使用对象的字段属性设置JsonProperty来实现(不推荐,因为需要手动的修改每个字段的属性 ...

C#实体对象序列化成Json,格式化,并让字段的首字母小写

解决办法有两种:第一种:使用对象的字段属性设置JsonProperty来实现(不推荐,因为需要手动的修改每个字段的属性) public class UserInfo { [JsonProperty(& ...

java基础/一个类A继承了类B,那么A就叫做B的派生类或子类,B就叫基类或超类。

类重复,pulic class demo1 和class demo1 重复 无主类, 在cmd中输入命令: SET CLASSPATH=. (等号后为英文点符号),即可设置解释的路径为当前路径. 再次 ...

C#中类的字段或属性不被序列化成JSON或XML

将一个类序列化成JSON或XML时,如果某个字段或属性不想被序列化,则可以使用以下Attribute: 1.[Newtonsoft.Json.JsonIgnore]特性:使用Newtonsoft.Js ...

Entity Framework 实体框架的形成之旅--基类接口的统一和异步操作的实现(3)

在本系列的第一篇随笔中介绍了Entity Framework 实体框架的一些基础知识,以及构建 ...

随机推荐

【jQuery】scroll 滚动到顶部

Jquery 实现页面滚动到顶端 $(document).ready(function () { // 滚动窗口来判断按钮显示或隐藏 $(window).scroll(function () { // ...

MYSQL提权总结

最近在测试一个项目,遇到了MYSQL数据库,想尽办法提权,最终都没有成功,很是郁闷,可能是自己很久没有研究过提权导致的吧,总结一下MYSQL提权的各种姿势吧,权当复习了.关于mysql提权的方法也就那 ...

HTML 几种特别分割线特效

一.基本线条 二.特效(效果并不是孤立的,可相互组合)1.两头渐变透明:


数据源 String webview_str:

div>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值