beanutil常用的方法

  • 格式:pdf
  • 大小:54.93 KB
  • 文档页数:1

beanutil常⽤的⽅法

Apache Common BeanUtil是⼀个常⽤的在对象之间复制数据的⼯具类,著名的web开发框架struts就是依赖于它进⾏ActionForm的创建。

BeanUtil最常⽤的类是org.apache.commons.beanutils.BeanUtils。

BeanUtils最常⽤的⽅法为:

1. public void copyProperties(java.lang.Object dest, java.lang.Object orig) 把orig中的值copy到dest中.

2. public java.util.Map describe(java.lang.Object bean) 把Bean的属性值放⼊到⼀个Map⾥⾯。

3. public void populate(java.lang.Object bean, java.util.Map properties) 把properties⾥⾯的值放⼊bean中。

4. public void setProperty(java.lang.Object bean, java.lang.String name, java.lang.Object value) 设置Bean对象的名称为name的property的值为value.

5. public String getProperty(java.lang.Object bean, java.lang.String name)

取得bean对象中名为name的属性的值。

详细的使⽤⽅法可以参见官⽅⽹站:

Apache Common BeanUtil的常见使⽤场景。

1. 同类之间不同对象要求进⾏数据复制。

User user1 = …;User user2 = …;BeanUtils. copyProperties(user2,user1);

2. 不同类不同对象之间的数据复制。

UserForm userForm = …;User user = …;BeanUtils. copyProperties(user, userForm);

相信经常使⽤struts的⼈,⼀定会很熟悉上⾯的代码。这是⼀个典型把页⾯的value object数据复制到domain object的例⼦。3. 对象数据和Map之间互相转化。

User user = …;Map userMap = BeanUtils.describe(user);Map userMap = …;User user = …;BeanUtils.populate(user,userMap);

Map可以看成⼀个动态数据容器,作为VO很适合在不同层之间传播数据,作为PO也可以动态存储字段信息,合理运⽤可以减少程序很多修改和维护⼯作。所以让bean和map之间⽅便的进⾏数据填充,⾮常必要。