Java BeanUtils - BeanUtils และ ConvertUtils
คำอธิบาย
BeanUtilsถูกกำหนดให้เป็นวิธีการที่ยูทิลิตี้สำหรับประชากรคุณสมบัติ JavaBeans และConvertUtilsค่าสเกลาวิธีการแปลงสตริงวัตถุอาร์เรย์สตริงอาร์เรย์ของชั้นที่ระบุ
BeanUtils
BeanUtilsยอมรับค่าสตริงโดยใช้วิธีการตั้งค่าโดยอัตโนมัติและแปลงให้ประเภทสถานที่เหมาะสำหรับพื้นฐาน Java และใช้วิธีการทะเยอทะยานสำหรับการแปลงกลับ เติม ()วิธีการยอมรับการตั้งค่าของค่าทรัพย์สินจากjava.util.HashMapและใช้ setters เหมาะสมเมื่อใดก็ตามที่ถั่วมีทรัพย์สินที่มีชื่อเดียวกัน
ตัวอย่าง
ตัวอย่างด้านล่างแสดงการใช้คุณสมบัติ 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
ตอนนี้รันโค้ดโดยใช้ตัวเลือก Run หรือ Ctrl + f11 และเอาต์พุตด้านล่างจะปรากฏขึ้น
ConvertUtils
Apache Commons BeanUtilsเป็นไลบรารีที่มาพร้อมกับตัวแปลงจำนวนมากเพื่อแปลงเป็นและจากชนิดข้อมูลต่างๆและยังมีคลาสยูทิลิตี้ConvertUtilsซึ่งใช้ประโยชน์จากตัวแปลงเหล่านี้
ตัวอย่าง
ตัวอย่างด้านล่างแสดงการแปลงสตริงอาร์เรย์เป็นอาร์เรย์คู่โดยใช้ยูทิลิตี้ConvertUtils :
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
ตอนนี้รันโค้ดโดยใช้ตัวเลือก Run หรือ Ctrl + f11 และเอาต์พุตด้านล่างจะปรากฏขึ้น