必威体育Betway必威体育官网
当前位置:首页 > IT技术

自定义BeanUtils的populate方法实现

时间:2019-09-14 11:10:00来源:IT技术作者:seo实验室小编阅读:73次「手机版」
 

beanutils.populate

1.1.1 功能分析

public static void populate(Object bean,Map map)

                              // 修改任意对象中的属性, 为传入Map集合中的键和值

              思路:

1. 获取传入对象的字节码对象

2. 获取map集合中所有的键和值

3. 调用Class中的getDeclaredfield()方法将每一个键传入, 得到Field对象

4. 通过Field对象中的set方法赋值

5. Try catch捕获getDeclaredField方法可能发生的异常.(为了方式传入错误的值)

1.1.2 实例代码

//public static void populate(Object bean,Map map)
 
public static void populate(Object bean,Map map) throws ReflectiveOperationException {
 
//通过javaBean对象来获取对应的字节码对象
 
Class clazz = bean.getClass();
 
//获取Map中所有的key
 
Set keys = map.keySet();
 
for (Object key : keys) {
 
 
try {
 
//根据key来获取对应的Field对象
 
Field f = clazz.getDeclaredField(key.toString());
 
//根据key来获取Map中对应的value
 
Object value = map.get(key);
 
 
f.setaccessible(true);
 
f.set(bean, value);
 
} catch(NoSuchFieldException e) {
 
//e.printstacktrace();
 
}
 
}
 
}

相关阅读

BeanUtils

【简介】 BeanUtils工具是一种方便我们对JavaBean进行操作的工具,是Apache组织下的产品。 【maven依赖】 <dependency> <groupId>

BeanUtils.populate()方法的使用;

导包beanutils.jarcommons-logging.jar方法的作用:用来将一些 key-value 的值(例如 hashmap)映射到 bean 中的属性。BeanUtils:控制

BeanUtils工具类常用方法

   谨慎使用这个copyproperties这个功能,相同的属性都会被替换,不管是否有值  BeanUtils 是 Apache commons组件的成员之一,主

BeanUtils.copyProperties()方法的用法及效率

一、简介: org.springframework.beans.BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行

Beanutils.copyProperties( )用法及重写提高效率

一、简介:BeanUtils提供对Java反射和自省API的包装。其主要目的是利用反射机制对JavaBean的属性进行处理。我们知道,一个JavaBean通

分享到:

栏目导航

推荐阅读

热门阅读