beanutils的下載地址:http://commons.apache.org/proper/commons-beanutils/download_beanutils.cgi
該壓縮包有測試的代碼:
我們就使用其中一個來作為測試使用
接下來就對beanutils進行測試:
數據模型 user.java:

1 package learning_something; 2 3 public class User { 4 private String username; 5 private String email; 6 private String password; 7 private String name; 8 private String phone; 9 private String address; 10 private boolean isadmin; 11 private boolean isvalidate; 12 public String getUsername() { 13 return username; 14 } 15 public void setUsername(String username) { 16 this.username = username; 17 } 18 public String getEmail() { 19 return email; 20 } 21 public void setEmail(String email) { 22 this.email = email; 23 } 24 public String getPassword() { 25 return password; 26 } 27 public void setPassword(String password) { 28 this.password = password; 29 } 30 public String getName() { 31 return name; 32 } 33 public void setName(String name) { 34 this.name = name; 35 } 36 public String getPhone() { 37 return phone; 38 } 39 public void setPhone(String phone) { 40 this.phone = phone; 41 } 42 public String getAddress() { 43 return address; 44 } 45 public void setAddress(String address) { 46 this.address = address; 47 } 48 public boolean isIsadmin() { 49 return isadmin; 50 } 51 public void setIsadmin(boolean isadmin) { 52 this.isadmin = isadmin; 53 } 54 public boolean isIsvalidate() { 55 return isvalidate; 56 } 57 public void setIsvalidate(boolean isvalidate) { 58 this.isvalidate = isvalidate; 59 } 60 public User(String username, String email, String password, String name, String phone, String address, 61 boolean isadmin, boolean isvalidate) { 62 super(); 63 this.username = username; 64 this.email = email; 65 this.password = password; 66 this.name = name; 67 this.phone = phone; 68 this.address = address; 69 this.isadmin = isadmin; 70 this.isvalidate = isvalidate; 71 } 72 73 74 public User(String username, String email, String password, String name, String phone, String address) { 75 76 this.username = username; 77 this.email = email; 78 this.password = password; 79 this.name = name; 80 this.phone = phone; 81 this.address = address; 82 this.isadmin = false; 83 this.isvalidate = false; 84 } 85 public User() { 86 super(); 87 } 88 89 90 91 92 93 94 }
bean中主要的類是BeanUtils,如圖:
BeanUtils類的作用:把一個Map集合內的數據進行組裝到一個Javabean中,Javabean指的就是數據模型
運行時出現的錯誤:
說明還需要下載一個logging的包,是一個作為輸出的包
下載地址:http://commons.apache.org/proper/commons-logging/download_logging.cgi
加入該包
數據模型user.java沒有進行重寫方法出現的結果:
進行重寫了之后:
第一行顯示結果表示沒有使用BeanUtils,第二行是使用了BeanUtils出現的結果:
package learning_something; import java.lang.reflect.InvocationTargetException; import java.util.HashMap; import java.util.Map; import org.apache.commons.beanutils.BeanUtils; public class TestBeanUtils { public static void main(String[] args) throws Exception { Map<String,Object> map=new HashMap<String,Object>(); map.put("username", "perfect"); map.put("email", "jiguiyan1998@qq.com"); map.put("password", "123"); User u=new User(); System.out.println(u); BeanUtils.copyProperties(u, map); System.out.println(u); } }
注意:寫的屬性一定得需與數據模型中的相同,要不然會出現不能對應的錯誤,因為它找不到所需的屬性。