JavaWeb BeanUtils信息類原理詳解
這篇文章主要介紹了JavaWeb BeanUtils信息類原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
一.BeanInfo
1.BeanInfo是JavaBean類的信息類,一個javaBean的信息封裝在對應(yīng)beanInfo對象中
2.要獲取到beanInfo,一般通過一個內(nèi)省類Introspector的一個方法getBeanInfo(Class<T> beanClass),給個javaBean的類型就會返回對應(yīng)的beanInfo對象,該方法的底層就是通過反射實現(xiàn)的
3.Bean常用的方法:
1.MethodDescriptor[] getMethodDescriptors():獲取到j(luò)avaBean對象的方法描述符對象的數(shù)組,
2.PropertyDescriptor[] getPropertyDescriptors():獲取到j(luò)avaBean對象的屬性描述符對象的數(shù)組,有了PropertyDescriptor對象我們就可以獲取到讀寫(get/set)的方法了,有了方法我們就可以通過反射來調(diào)用該方法了
3.流程如圖:

二.BeanUtils
1.有兩個jar包已經(jīng)封裝好了上面內(nèi)省的機制:
commons-beanutils(里面依賴的是內(nèi)?。┖蚦ommons-logging兩個jar包,所以上面流程圖的操作不需要我們做了
2.beanUtils下有三個方法非常方便:
?。?)void setProperty(bean, name, value):第一個參數(shù)是javaBean對象,二是屬性名,三是屬性值
?。?)String getProperty(bean, name):第一個參數(shù)是javaBean對象,二是屬性名
?。?)void populate(bean, map):把一個map的屬性封裝到bean對象中,map的Key屬性名必須跟bean中屬性的名稱一樣,兩者都相同
3.當(dāng)對javaBean對象操作時,很多時候我們會用到BeanUtils
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java.Net.UnknownHostException異常處理問題解決
這篇文章主要介紹了java.Net.UnknownHostException異常處理方法,問題原因是在系統(tǒng)的?/etc/Hostname中配置了主機名,而在/etc/hosts文件中沒有相應(yīng)的配置,本文給大家詳細講解,需要的朋友可以參考下2023-03-03
Maven指令打包SpringBoot項目提示沒有主清單文件問題
在Java開發(fā)中,打包Jar時常會遇到“沒有主清單屬性”的錯誤,這通常是因為在pom.xml文件中沒有正確配置maven插件導(dǎo)致的,特別是在使用自定義的<parent/>節(jié)點而非spring-boot-starter-parent時2024-09-09
JavaWeb項目打開網(wǎng)頁出現(xiàn)Session Error的異常解決方案
這篇文章主要介紹了JavaWeb項目打開網(wǎng)頁出現(xiàn)Session Error的異常解決方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-10-10
Mybatis查詢數(shù)據(jù)的項目實現(xiàn)
MyBatis通過XML配置文件或注解,把Java對象映射到對應(yīng)的數(shù)據(jù)庫表中,實現(xiàn)對象關(guān)系和數(shù)據(jù)關(guān)系的互相轉(zhuǎn)換,從而使得Java應(yīng)用程序能夠更簡單的操作和讀取數(shù)據(jù)庫,本文就詳細的介紹一下如何實現(xiàn),感興趣的可以了解一下2023-09-09

