zoukankan      html  css  js  c++  java
  • Java中将对象转换为Map的方法

    将对象转换为Map的方法,代码如下:

        /**
         * 将对象转成TreeMap,属性名为key,属性值为value
         * @param object    对象
         * @return
         * @throws IllegalAccessException
         */
        private static TreeMap<String, Object> objToMap(Object object) throws IllegalAccessException {
    
            Class clazz = object.getClass();
            TreeMap<String, Object> treeMap = new TreeMap<String, Object>();
    
            while ( null != clazz.getSuperclass() ) {
                Field[] declaredFields1 = clazz.getDeclaredFields();
    
                for (Field field : declaredFields1) {
                    String name = field.getName();
    
                    // 获取原来的访问控制权限
                    boolean accessFlag = field.isAccessible();
                    // 修改访问控制权限
                    field.setAccessible(true);
                    Object value = field.get(object);
                    // 恢复访问控制权限
                    field.setAccessible(accessFlag);
    
                    if (null != value && StringUtils.isNotBlank(value.toString())) {
                        //如果是List,将List转换为json字符串
                        if (value instanceof List) {
                            value = JSON.toJSONString(value);
                        }
                        treeMap.put(name, value);
                    }
                }
    
                clazz = clazz.getSuperclass();
            }
            return treeMap;
        }
  • 相关阅读:
    手撕RPC框架
    关于JVM的一些冷知识
    luoguP2627 修剪草坪
    [USACO16OPEN]248
    luoguP1171 售货员的难题
    luoguP2016 战略游戏
    luoguP2422 良好的感觉
    POJ1160 [IOI2000]Post Office
    luoguP2015 二叉苹果树
    BZOJ1756 小白逛公园
  • 原文地址:https://www.cnblogs.com/alsodzy/p/9854314.html
Copyright © 2011-2022 走看看