Beanutils工具包:
l 示範用eclipse如何加入jar包,先隻是引入beanutils包,等程式運作出錯後再引入logging包。
l 在前面内省例子的基礎上,用BeanUtils類先get原來設定好的屬性,再将其set為一個新值。
Ø get屬性時傳回的結果為字元串,set屬性時可以接受任意類型的對象,通常使用字元串,傳回的也是字元串。
l 用PropertyUtils類先get原來設定好的屬性,再将其set為一個新值。
Ø get屬性時傳回的結果為該屬性本來的類型,set屬性時隻接受該屬性本來的類型。
示範去掉JavaBean(ReflectPoint)的public修飾符時,BeanUtils工具包通路javabean屬性時出現的問題、
ReflectPoint pt1 = new ReflectPoint(3,5);
System.out.println(BeanUtils.getProperty(pt1, "x").getClass().getName());
BeanUtils.setProperty(pt1, "x", "9");
System.out.println(pt1.getX());
/*
//java7的新特性
Map map = {name:"zxx",age:18};
BeanUtils.setProperty(map, "name", "lhm");
*/
BeanUtils.setProperty(pt1, "birthday.time", "111");//支援屬性的級聯操作
System.out.println(BeanUtils.getProperty(pt1, "birthday.time"));
PropertyUtils.setProperty(pt1, "x", 9);
System.out.println(PropertyUtils.getProperty(pt1, "x").getClass().getName());