原创声明: 该文章为原创文章,未经博主同意严禁转载。
在开发Android的时候,用户端与服务端一般是通过传递Json数据的方式进行通信的,目前主流都是使用Gson库对Json数据进行处理但实际开发的时候,Gson库不一定能满足我们的需求。例如,我曾经做过一个项目,服务器以Json的格式发送数据到客户端,而客户端需要以Map类型的数据回传给服务器。所以在这个时候,我们就需要把Bean类以类似Gson库的方式自动转换成Map数据,以达到提高效率的目的。
创建能自动解析数据的基类BaseBean
该类中只有一个方法,就是toMap。toMap方法的作用是通过class.getDeclaredFields()方法获取class对象的所有属性,然后将属性名转化为map对象的key,属性的值转化为map对象的value。
public class BaseBean {
private Map params;
/**
* @Method: toMap()
* @author create by Tang
* @date date 16/8/23 下午3:20
* @Description: 把实体类转换成Map类
*/
public Map toMap() {
Class clazz = this.getClass();
Class superClass = clazz.getSuperclass();
Field[] fields = clazz.getDeclaredFields();
Field[] superFields = superClass