JavaWeb BeanUtils信息類原理詳解
這篇文章主要介紹了JavaWeb BeanUtils信息類原理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
一.BeanInfo
1.BeanInfo是JavaBean類的信息類,一個(gè)javaBean的信息封裝在對(duì)應(yīng)beanInfo對(duì)象中
2.要獲取到beanInfo,一般通過(guò)一個(gè)內(nèi)省類Introspector的一個(gè)方法getBeanInfo(Class<T> beanClass),給個(gè)javaBean的類型就會(huì)返回對(duì)應(yīng)的beanInfo對(duì)象,該方法的底層就是通過(guò)反射實(shí)現(xiàn)的
3.Bean常用的方法:
1.MethodDescriptor[] getMethodDescriptors():獲取到j(luò)avaBean對(duì)象的方法描述符對(duì)象的數(shù)組,
2.PropertyDescriptor[] getPropertyDescriptors():獲取到j(luò)avaBean對(duì)象的屬性描述符對(duì)象的數(shù)組,有了PropertyDescriptor對(duì)象我們就可以獲取到讀寫(get/set)的方法了,有了方法我們就可以通過(guò)反射來(lái)調(diào)用該方法了
3.流程如圖:
二.BeanUtils
1.有兩個(gè)jar包已經(jīng)封裝好了上面內(nèi)省的機(jī)制:
commons-beanutils(里面依賴的是內(nèi)省)和commons-logging兩個(gè)jar包,所以上面流程圖的操作不需要我們做了
2.beanUtils下有三個(gè)方法非常方便:
?。?)void setProperty(bean, name, value):第一個(gè)參數(shù)是javaBean對(duì)象,二是屬性名,三是屬性值
?。?)String getProperty(bean, name):第一個(gè)參數(shù)是javaBean對(duì)象,二是屬性名
?。?)void populate(bean, map):把一個(gè)map的屬性封裝到bean對(duì)象中,map的Key屬性名必須跟bean中屬性的名稱一樣,兩者都相同
3.當(dāng)對(duì)javaBean對(duì)象操作時(shí),很多時(shí)候我們會(huì)用到BeanUtils
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于Mybatis plus 自動(dòng)代碼生成器的實(shí)現(xiàn)代碼
本文通過(guò)實(shí)例代碼給大家介紹了基于Mybatis-plus 自動(dòng)代碼生成器的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-05-05SpringMVC實(shí)現(xiàn)賬號(hào)只能在一處登陸
這篇文章主要為大家詳細(xì)介紹了SpringMVC如何實(shí)現(xiàn)賬號(hào)只能在一處登陸,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03詳解SpringBoot 解決攔截器注入Service為空問(wèn)題
這篇文章主要介紹了詳解SpringBoot 解決攔截器注入Service為空問(wèn)題的解決,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-06-06Spring?Boot中的max-http-header-size配置方式
這篇文章主要介紹了Spring?Boot中的max-http-header-size配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09在SpringBoot: SpringBoot里面創(chuàng)建導(dǎo)出Excel的接口教程
這篇文章主要介紹了在SpringBoot: SpringBoot里面創(chuàng)建導(dǎo)出Excel的接口教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-10-10一文詳解Spring任務(wù)執(zhí)行和調(diào)度(小結(jié))
這篇文章主要介紹了一文詳解Spring任務(wù)執(zhí)行和調(diào)度(小結(jié)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08Spring Cloud Ribbon實(shí)現(xiàn)客戶端負(fù)載均衡的示例
本篇文章主要介紹了Spring Cloud Ribbon實(shí)現(xiàn)客戶端負(fù)載均衡的示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-02-02