一、为什么使用BeanUtils组件
简化javabean的操作!
二、如何使用javabean组件
- 引入commons-beanutils-1.8.3.jar核心包
- 引入日志支持包: commons-logging-1.1.3.jar
三、实例,基本用法
- 对象使用的拷贝
BeanUtils.copyProperty(admin, "userName", "jack"); BeanUtils.setProperty(admin, "age", 18);
- 对象的拷贝
BeanUtils.copyProperties(newAdmin, admin);
- 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这个转换器的处理。
时间: 2024-10-07 05:02:16