使用BeanUtils操作javabean

由于java内部提供的BeanInfo操作JavaBean时比较麻烦,于是在Apache官网上出现了BeanUtils,此工具简化了我们队JavaBean属性等的操作,同时还提供了一些比较使用强大的工具。

 

提醒:在使用BeanUtils前需要导入另外一个包commons-logging,否则可能会出现不能运行的情况,因为BeanUtils中用到了此包。

 

BeanUtils操作bean的属性非常方便,如下:

 

//定义类的对象
		Person p = new Person();
		//设置该对象的属性,参数分别为:待设置属性的对象,属性名称,属性值(可传任意类型,自动转化)
		BeanUtils.setProperty(p, "name", "xxxx");//设置人的名字
		BeanUtils.setProperty(p, "age", "12");//自动将string转化为int型,只支持8种数据类型
		BeanUtils.setProperty(p, "address", "四川达州");
		BeanUtils.setProperty(p, "birthday", "1991-11-23");
		System.out.println(p.getName());
		System.out.println(p.getAge());
		System.out.println(p.getBirthday());
		System.out.println(p.getAddress());

 不仅如此,还可以采用map的形式来设置Bean的属性:

Map map = new HashMap<>();
		map.put("name", "suse");
		map.put("age", "13");
		map.put("address", "四川 自贡");
		map.put("birthday", "1992-11-22");
		
		ConvertUtils.register(new DateLocaleConverter(), Date.class);//注册转化器,将按照本地格式转化为日期对象
		
		Person p = new Person();
		
		BeanUtils.populate(p, map);//用map集合中的值,填充bean的属性
		
		System.out.println(p.getName());
		System.out.println(p.getAge());
		System.out.println(p.getBirthday());
		System.out.println(p.getAddress());

 同时BeanUtils以提供了帮助文档以及源码下载,

官方下载地址:http://commons.apache.org/proper/commons-beanutils/

你可能感兴趣的:(java,BeanUtils,javabean)