使用BeanUtils操作javabean
程序员文章站
2022-05-02 09:53:49
...
由于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以提供了帮助文档以及源码下载,
上一篇: Ruby 2.2.0发布,支持回收Symbol类型对象
下一篇: java 对象之间属性值复制
推荐阅读