BeanUtils组件

一、为什么使用BeanUtils组件

   简化javabean的操作!

二、如何使用javabean组件

  1. 引入commons-beanutils-1.8.3.jar核心包
  2. 引入日志支持包commons-logging-1.1.3.jar

三、实例,基本用法

  1. 对象使用的拷贝
    BeanUtils.copyProperty(admin, "userName", "jack");
    BeanUtils.setProperty(admin, "age", 18);
  2. 对象的拷贝
    BeanUtils.copyProperties(newAdmin, admin);
  3. map数据拷贝到javabean中(map中的key要和Javabean中的属性名一致)
      Map<String,Object> map=new HashMap<String,Object>();
        map.put("userName", "Jerry");
        map.put("age", 29);
        BeanUtils.populate(newAdmin, map);

练兵:

    
    public void test() throws IllegalAccessException, InvocationTargetException{
        Admin admin=new Admin();
        //a. BeanUtils 组件实现对象属性的拷贝
        BeanUtils.copyProperty(admin, "userName", "jack");
        //总结1:对于基本数据类型,会自动进行类型转换!
        //b.对象的拷贝
        Admin newAdmin=new Admin();
        BeanUtils.copyProperties(newAdmin, admin);
        //c map 数据,拷贝到对象中
        //map中的key要与javabean的属性名称一致
        Map<String,Object> map=new HashMap<String,Object>();
        map.put("userName", "Jerry");
        map.put("age", 29);
        BeanUtils.populate(newAdmin, map);
        System.out.println(newAdmin.getUserName());
    }

四、实例,日期类型的拷贝

 对于基本数据类型,会自动进行类型转换!但是对于日期等特殊的类型,需要注册日期类型转换器。

ConvertUtils.register(new DateLocaleConverter(), Date.class);

意思是需要转成Date类型的数据都要通过DateLocaleConverter这个转换器的处理。

原文地址:https://www.cnblogs.com/lyjs/p/5039790.html