`

将Object对象的属性(有对应get方法)按照属性名字(key)和对应值(value)放到Map中

    博客分类:
  • java
 
阅读更多

/**
     * 将Object对象的属性(有对应get方法)按照属性名字(key)和对应值(value)放到Map中,
     * 属性值等于null的将不加如到Map中
     *
     * @param Object
     *            有属性和对应其属性的get方法的对象
     * **/
    public Map getMapByObject(Object o) {
        Class cls = o.getClass();
        Map map = new HashMap();
        Field fieldlist[] = cls.getDeclaredFields();
        String value = null;
        Method[] methods = cls.getDeclaredMethods();
        try {
            for (Method method : methods) {
                for (Field fld : fieldlist) {
                    value = fld.getName();
                    value = "get" + value.toUpperCase().charAt(0)
                            + value.substring(1, value.length());
                    if (value.equals(method.getName())) {
                        Object obj = method.invoke(o);
                        if (obj == null)
                            continue;
                        else
                            map.put(fld.getName(), obj);
                    }
                }
            }
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        }
        return map;
    }

1
1
分享到:
评论
1 楼 kimmking 2010-10-25  
BeanUtils.describe

相关推荐

    嵌套Map或者List获取key、value值

    本篇将详细介绍如何在嵌套的Map和List中获取key和value值。 首先,让我们理解什么是嵌套的Map。一个Map是一个键值对的集合,其中每个键都是唯一的,并且关联着一个值。当一个Map的值本身又是一个Map时,我们就说这...

    根据map值获取key.txt

    在 Java 编程语言中,`Map` 是一种非常常见的数据结构,它通过键值对的形式存储数据,其中键(Key)是唯一的,而值(Value)可以有多个相同的实例。在实际开发过程中,我们经常会遇到需要根据值(Value)来查找其...

    Java利用反射获取object的属性和值代码示例

    接着,我们遍历这些字段,并通过setAccessible(true)方法设置这些字段的访问权限,最后,我们使用get()方法获取每个字段的值,并将其存储到一个Map中。 在getValueByKey()方法中,我们首先获取对象的Class对象,...

    比较map对象之间的工具类,特殊场景,value的string类型相等,认同为相等(附源码)

    如果在第二个Map中找不到对应的键,或者找到的值的字符串表示不等于第一个Map中的值,那么返回false,表示两个Map不相等。如果所有条目都通过了这个检查,那么返回true,表明两个Map相等。 这个工具类的使用方式很...

    对map里面的value进行排序

    然而,有时我们需要对Map中的值进行排序,例如按照value的大小进行升序或降序排列。这篇博客"对map里面的value进行排序"探讨的就是如何实现这一需求。 首先,我们了解Map接口的基本概念。Map接口不直接支持排序,...

    java实现Object和Map之间的转换3种方式

    Java 实现 Object 和 Map 之间的转换 3 种方式 Java 中,Object 和 Map 是 two kinds of data types 经常需要相互转换的数据类型...Java 实现 Object 和 Map 之间的转换有多种方式,可以根据实际情况选择适合的方法。

    根据某个属性对List中的所有对象分组,该属性值相同的对象分到一个组

    通过遍历原始List,检查Map中是否已经存在当前对象的`typeName`作为键,如果存在则将对象添加到对应的值列表,如果不存在则创建一个新的值列表并添加到Map中。 ```java Map, List<AlarmStandardTab>> map = new ...

    json字符串转成 Map/List

    将JSON字符串转化为Map,可以使用`fromJson()`方法: ```java import com.google.gson.Gson; import java.util.Map; String jsonString = "{\"key\":\"value\"}"; Gson gson = new Gson(); Map, Object> map...

    Java中对list map根据map某个key值进行排序的方法

    我们首先从每个 Map 对象中获取“cj”键对应的值,然后将其转换为 Integer 对象,然后使用compareTo() 方法进行比较。 最后,我们可以使用 for 循环来打印出排序后的 List 集合。 ```java for (Map, Object> map :...

    Mybatis中注解@MapKey的使用详解

    在Mybatis框架中,@MapKey注解是一个非常实用的功能,它允许我们将查询结果转换成一个Map对象,其中键(key)由我们指定的字段值决定,值(value)则是查询返回的完整行数据。这在处理多条记录时特别有用,尤其是在结果...

    java xml和map互转

    本篇文章将详细介绍如何使用DOM4J库来实现XML和Map之间的转换,并讨论带有属性、无属性、有根节点和无根节点的情况。 DOM4J是一个强大的Java XML API,它提供了灵活且高性能的方式来处理XML文档。在Java中,我们...

    java中Map映射机制

    Java中的Map映射机制是Java集合框架的重要组成部分,它提供了键值对的存储方式,使得可以通过键来查找和操作对应的值。Map接口是所有映射类的基础,它定义了多种方法来实现对键值对的操作。 Map接口的核心方法包括...

    javascript 中Map的使用

    - 使用数组的解构赋值,每个数组元素是一个包含两个元素的数组,分别代表键和值,如`let map = new Map([['key1', 'value1'], ['key2', 'value2']]);` 2. 存取数据: - `set(key, value)`:设置键值对。 - `get...

    JDK8新增便利的Map默认值方法Java开发Java经验

    1. `default V getOrDefault(Object key, V defaultValue)`:此方法会尝试获取给定key对应的值,如果key不存在,那么返回指定的默认值。这样我们就可以一行代码完成之前的逻辑: ```java Map, Integer> map = new ...

    POJO转Map.txt

    5. **调用getter方法获取属性值**:对于每个getter方法,通过反射调用该方法并获取其返回值,将返回值存储到Map中,键为属性名,值为属性值。 #### 四、POJO转Map代码示例分析 下面是对给定代码的具体分析: ```...

    Map转换成xml

    Object value = _obj.get(key); // 根据值的类型进行转换 // ... } } return sb.toString(); } // 其他辅助转换方法,如处理集合和非复杂类型 } ``` #### 四、注意事项 - **编码问题**:确保XML文档的...

    Spring 读取properties文件key+value方式.rar

    Spring的`@Value`注解可以直接注入属性值到字段或方法参数中。在类中,我们可以这样使用: ```java @Component public class DatabaseConfig { @Value("${database.url}") private String dbUrl; @Value("${...

    java中map集合的用法.doc

    使用`put()`方法将键值对放入Map中,如: ```java map.put("sa", "dd"); ``` 3. **获取值**: 通过键来获取对应的值,可以使用`get()`方法: ```java String str = map.get("sa").toString(); ``` 4. **...

    java遍历Map对象的说有数据

    其中,使用`entrySet()`可以直接获取到键值对,而使用`keySet()`则需要额外调用`get()`方法来获取对应的值。这两种方法各有优缺点,具体选择哪种方式取决于实际需求和个人偏好。 对于Java开发者来说,了解并掌握...

    读取properties返回map并写入文件

    在这个方法中,我们首先创建一个空的Properties对象`props`,然后遍历Map对象,将每个键值对设置到Properties对象中。最后,我们通过`store()`方法将Properties对象写入指定的输出文件,同时可以提供一个注释字符串...

Global site tag (gtag.js) - Google Analytics