JavaWeb BeanUtils資訊類原理詳解
這篇文章主要介紹了JavaWeb BeanUtils資訊類原理詳解,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
一.BeanInfo
1.BeanInfo是JavaBean類的資訊類,一個javaBean的資訊封裝在對應beanInfo物件中
2.要獲取到beanInfo,一般通過一個內省類Introspector的一個方法getBeanInfo(Class<T> beanClass),給個javaBean的型別就會返回對應的beanInfo物件,該方法的底層就是通過反射實現的
3.Bean常用的方法:
1.MethodDescriptor[] getMethodDescriptors():獲取到javaBean物件的方法描述符物件的陣列,
2.PropertyDescriptor[] getPropertyDescriptors():獲取到javaBean物件的屬性描述符物件的陣列,有了PropertyDescriptor物件我們就可以獲取到讀寫(get/set)的方法了,有了方法我們就可以通過反射來呼叫該方法了
3.流程如圖:
二.BeanUtils
1.有兩個jar包已經封裝好了上面內省的機制:
commons-beanutils(裡面依賴的是內省)和commons-logging兩個jar包,所以上面流程圖的操作不需要我們做了
2.beanUtils下有三個方法非常方便:
(1)void setProperty(bean,name,value):第一個引數是javaBean物件,二是屬性名,三是屬性值
(2)String getProperty(bean,name):第一個引數是javaBean物件,二是屬性名
(3)void populate(bean,map):把一個map的屬性封裝到bean物件中,map的Key屬性名必須跟bean中屬性的名稱一樣,兩者都相同
3.當對javaBean物件操作時,很多時候我們會用到BeanUtils
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。