1. 程式人生 > >javaBean與Map互轉

javaBean與Map互轉

總結:  javaBean與Map<String,Object>互轉利用到了java的內省( Introspector )和反射(reflect)機制。 其思路為: 通過類 Introspector 來獲取某個物件的 BeanInfo 資訊,然後通過 BeanInfo 來獲取屬性的描述器PropertyDescriptor,再利用屬性描述器獲取某個屬性對應的 getter/setter 方法,然後通過反射機制來getter和setter。


什麼是內省? 
內省是 Java 語言對 Bean 類屬性、事件的一種預設處理方法。例如類 PersonBean中有屬性 name, 那我們可以通過 getName,setName 來得到其值或者設定新的值。通過 getName/setName 來訪問 name 屬性,這就是預設的規則。 Java 中提供了一套 API 用來訪問某個屬性的 getter/setter 方法,通過這些 API 可以使你不需要了解這個規則(但你最好還是要搞清楚),這些 API 存放於包 java.beans 中。注意: PersonBean中屬性mN的getter/setter方法必須滿足javaBean命名規範,即getmN,不能寫作getMN,否則轉換失敗。詳情參考
http://blog.renren.com/share/236384819/5598710664