1. 程式人生 > 程式設計 >JavaWeb BeanUtils資訊類原理詳解

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.流程如圖:

JavaWeb BeanUtils資訊類原理詳解

二.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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。