描述
BeanUtils 被定义为用于填充JavaBeans属性的实用程序方法和 ConvertUtils 方法转换字符串对象的标量值,字符串数组到指定类的数组.
BeanUtils
BeanUtils 通过使用setter方法接受字符串值,并自动将它们转换为适合Java基元的属性类型,并使用getter方法进行反向转换. populate()方法接受来自 java.util.HashMap 的一组属性值,并在bean包含具有相同名称的属性时使用合适的setter.
示例
以下示例显示了BeanUtils属性的用法:
import java.util.HashMap;import org.apache.commons.beanutils.BeanUtils;public class Test { @SuppressWarnings("unchecked") public static void main(String[] args){ @SuppressWarnings("rawtypes") HashMap map = new HashMap(); map.put("username","admin"); map.put("password","secret"); map.put("age","52"); User bean = new User(); try{ BeanUtils.populate(bean,map); }catch(Exception e){ e.printStackTrace(); } System.out.println("Username: "+bean.getUsername()); System.out.println("Password: "+bean.getPassword()); System.out.println("Age: "+bean.getAge()); }}
现在我们将创建另一个名为User.java的类,如下所示:
public class User { private String username; private String password; private String age; public String getUsername(){ return username; } public void setUsername(String username){ this.username = username; } public String getPassword() { return password; } public void setPassword(String password){ this.password = password; } public String getAge() { return age; } public void setAge(String age){ this.age = age; }}
输出
让我们执行以下步骤看看上面的代码如何工作:
将上面的第一个代码保存为Test.java.
现在使用"运行"选项或Ctrl + f11执行代码并显示如下输出.
ConvertUtils
Apache Commons BeanUtils 是一个库,它带有许多转换器,可以转换为不同的数据类型,也包含 ConvertUtils 实用程序类,它使用这些转换器.
示例
以下示例显示使用 ConvertUtils 实用程序将字符串数组转换为double数组:
package com.javadb;import org.apache.commons.beanutils.ConvertUtils;public class ConvertStringArrayToDoubleArray { public static void main(String[] args) { String values[] = { "5", "6", "3" }; double[] doubleValues = (double[])ConvertUtils.convert(values, Double.TYPE); for (double d : doubleValues) { System.out.println(d); } }}
输出
将上面的第一个代码保存为ConvertStringArrayToDoubleArray.java.
现在使用"运行"选项执行代码或显示Ctrl + f11和输出如下.