`

将一个 Map 对象转化为一个 JavaBean

 
阅读更多
/**
     * 将一个 Map 对象转化为一个 JavaBean 使用时最好保证value值不为null 不支持枚举类型和 用户自定义类
     * @param type 要转化的javabean
     * @param map 包含属性值的map map的key值为javabean属性 key值小写
     * @return 转化出来的 JavaBean 对象
     * @throws Exception  Exception
     */
    @SuppressWarnings("unchecked")
    public Object convertMap(Class type, Map<Object, Object> map)
            throws Exception
    {
        // 创建 JavaBean 对象
        Object obj = null;
 
            // 获取类属性
            BeanInfo beanInfo = Introspector.getBeanInfo(type);

            obj = type.newInstance();

            // 给 JavaBean 对象的属性赋值
            PropertyDescriptor[] propertyDescriptors = beanInfo
                    .getPropertyDescriptors();
            for (int i = 0; i < propertyDescriptors.length; i++)
            {
                PropertyDescriptor descriptor = propertyDescriptors[i];
                String propertyName = descriptor.getName().toLowerCase(
                        Locale.getDefault());

                if (map.containsKey(propertyName))
                {
                    String value = ConvertUtils.convert(map.get(propertyName));
                    Object[] args = new Object[1];
                    args[0] = ConvertUtils.convert(value, descriptor
                            .getPropertyType());

                    descriptor.getWriteMethod().invoke(obj, args);

                }
            }
        return obj;
    }
分享到:
评论

相关推荐

    Bean与Map转换工具类BeanMapConverter.java

    Bean与MAP间互转换的工具类。 1.将一个 Map 对象转化为一个 JavaBean,可指定BEAN的类型; 2.将一个 JavaBean 对象转化为一个 HashMap;

    List<Map>转化为List工具类

    一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List&lt;Map, Object&gt;&gt;结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List&lt;Map, Object&gt;&gt;转化为...

    Javabean和map相互转化方法代码示例

    下面是一个通用的 JavaBean 转换为 Map 的方法: ```java public static Map convertBean(Object bean) throws IntrospectionException, IllegalAccessException, InvocationTargetException { Class type = bean....

    map转Java实体类

    将一个 Map对象转化为JavaBean的形式返回,抛弃一些出现异常的问题与方法,遵循Java开发规范

    使用GSON库将Java中的map键值对应结构对象转换为JSON

    在这个例子中,我们创建了一个`Map, Point&gt;`,然后将其转换为JSON字符串,再反序列化回Map对象。 总结来说,GSON库提供了一种简洁、强大的方式来处理Java对象与JSON之间的转换。对于包含复杂键类型的Map,如Map...

    JAVA-JSON工具转换类

    它提供了许多功能,例如将Java对象转化为JSON字符串,或者将JSON文本解析为Java对象。这对于数据的序列化和反序列化非常有用,使得在服务器端和客户端之间传递复杂的数据结构变得更加便捷。 `ezmorph`库则主要用于...

    beanutils的jar包.zip

    在上述示例中,`ObjectMapper`将JSON字符串转换为一个Map对象,然后BeanUtils的`copyProperties`方法会遍历Map,将键值对分别赋值给User对象的对应属性。 相反,如果你需要将JavaBean转换为JSON字符串,你也可以...

    json数据相关jar包

    例如,使用Apache Commons BeanUtils库,你可以轻松地将JavaBean对象转化为JSON字符串,如下所示: ```java import org.apache.commons.beanutils.BeanUtils; import org.json.JSONObject; public class Json...

    JavaWeb开发技术-BeanUtils工具.pptx

    它接收一个JavaBean对象和一个Map,其中Map的键是属性名,值是对应的属性值。BeanUtils会遍历Map,将每个键值对中的值设为JavaBean对应属性的值,这里自动处理了类型的转换。 2. `setProperty(Object bean, String ...

    各种对象转成JSON字符串 (2).docx

    上述代码片段展示了一个名为`JSONUtil`的工具类,它提供了将不同类型的Java对象转换为JSON字符串的方法。这个工具类覆盖了基本类型、数组、集合(List、Set)、Map以及JavaBean对象的转换。 1. **基本类型转换**: ...

    json帮助类

    `json-lib`可以将Java对象(如MAP、BEAN、LIST等)转化为JSON字符串,反之亦可,使得JSON数据能方便地在Java应用中使用。`json-lib`还支持多种数据结构,如Array、HashMap、ArrayList、LinkedList等,并且可以与...

    JSON-lib

    前者将JSON对象转化为指定类型的JavaBean,后者将JSON数组转化为指定类型的List。 6. **自定义转换规则**:在处理复杂的对象结构时,可能需要自定义转换规则。JSON-lib允许通过实现`JsonConfig`接口并设置转换策略...

    json包括依靠包

    `json-lib`依赖于`commons-beanutils`这样的库,因为它们提供了方便的数据操作功能,这对于将Java对象转化为JSON字符串或者将JSON解析为Java对象是必要的。例如,当我们要将一个JavaBean转换为JSON时,`commons-...

    简单数据传输对象 json-lib 及源文件

    例如,可以使用`net.sf.json.JSONObject.toBean(jsonString)`将JSON字符串转换为一个JavaBean对象。 - **处理数组**:如果需要处理JSON数组,可以使用`net.sf.json.JSONArray`,提供类似的方法进行序列化和反序列化...

    json jar包

    它能够将数组、集合、Map、日期等Java类型转化为JSON格式,并能从JSON字符串中反序列化回Java对象。 2. **ezmorph-1.0.3.jar**:Ezmorph库是一个用于Java对象转换的工具,它允许开发者在运行时将一种类型的对象转换...

    net.sf.json.JSONObject依赖jar

    例如,如果你有一个JavaBean或者Map对象,你可以使用`fromObject()`方法快速地将其转换为JSON字符串,以便于在网络中传输或者存储。 以下是一些关于如何使用`JSONObject.fromObject()`的示例: ```java import ...

    解析json 需要的jar

    在处理JSON时,可能需要将JSON对象转化为Java对象,这时候ezmorph就派上用场了。它可以方便地将一个对象转换为另一种对象,比如字符串、数字等,这对于JSON数据的解析非常有用。 `commons-lang`是Apache Commons...

    java中使用的json类库

    - 将Java对象转换为JSON字符串:例如,一个JavaBean或Map可以被转化为JSON格式的字符串,便于在网络间传输。 - 从JSON字符串解析出Java对象:相反,接收到的JSON字符串可以被解析成相应的Java对象,以便进一步处理。...

    json_lib使用实例:java对象与json字符串的互转

    这个库提供了丰富的API,使得我们可以轻松地将Java对象转化为JSON字符串,以及将JSON字符串反序列化为Java对象。 ### JSON对象与Java对象的转换 1. **JSON字符串转Java对象** 使用`json-lib`,我们可以将JSON...

    commons相关jar

    - **功能**:它提供了将JavaBean集合转化为其他集合类型的方法,例如将Bean列表转化为Map,或者将Bean集合的属性值提取出来形成新的集合。 - **应用场景**:当需要基于JavaBean的属性进行集合操作时,如根据某个...

Global site tag (gtag.js) - Google Analytics