在j**a領域程式設計中,內省機制相當的不錯,可以省去我們程式設計師很多的不必要的**
比如說:在jdbc工具類 我們可以將resultset結果集待到 j**abean物件中
將http請求報文的資料 轉換到乙個 j**abacn物件當中去 這樣子可以省去我們很多的 request.getparameter('name') request.getparameter("password")
還有理解各種持久框架 都是用到了內省機制程式設計 很重要,很重要,很重要
j**a內省機制核心類是introspector
來乙個示例吧!
先寫乙個使用者bean類
packagecom.oa.domain;
import
lombok.data;
/*** 註明:我這裡使用了 lombok工具來自動生成 getter/setter方法
* 如果你沒有配置,則自己手動寫 getter/setter方法吧!!!
* @author
administrator *
*/@data
public
class
user
使用內省機制獲取所有的屬性
packagecom.oa.test;
import
j**a.beans.beaninfo;
import
j**a.beans.introspectionexception;
import
j**a.beans.introspector;
import
j**a.beans.propertydescriptor;
import
com.oa.domain.user;
public
class
demo1
//列印結果如下顯示
//屬性名:class class是繼承 extends object類上面的屬性
//屬性名:id
//屬性名:password
//屬性名:username
}}
注意:如果我們只想要 user類中的所有屬性 那我們只需要在獲取的時候加上引數 introspector.getbeaninfo(user.class,object.class);
//獲取user bean位元組碼
beaninfo beaninfo = introspector.getbeaninfo(user.class,object.class
);
//獲取所有的屬性集合
propertydescriptor propertydescriptors =beaninfo.getpropertydescriptors();
for(propertydescriptor pd : propertydescriptors)
屬性名:id屬性名:password
屬性名:username
微控制器01
1 什麼是微控制器一台能夠工作的計算機要有這樣幾個部份構成 cpu 進行運算 控制 ram 資料儲存 rom 程式儲存 輸入 輸出裝置 例如 序列口 並行輸出口等 在個人計算機上這些部份被分成若干塊晶元,安裝乙個稱之為主機板的印刷線路板上。而在微控制器中,這些部份,全部被做到一塊積體電路晶元中了,所...
狀態機與線性dp的轉化(01狀態機)
今天在學習單調佇列優化的時候發現乙個問題,就是發現好像01的狀態機問題都可以轉化成線性的dp問題,01 狀態機代表的狀態是選或不選,沒有多餘的狀態,而一般普通的dp所劃分的狀態即是選或不選,就像揹包問題,但是一些線性的dp表示的狀態是必選。烽火台是重要的軍事防禦設施,一般建在交通要道或險要處。一旦有...
狀態機系列學習筆記01
總的來說,有限狀態機系統,是指在不同階段會呈現出不同的執行狀態的系統,這些狀態是有限的 不重疊的。這樣的系統在某一時刻一定會處於其所有狀態中的乙個狀態,此時它接受一部分允許的輸入,產生一部分可能的響應,並且遷移到一部分可能的狀態。狀態 state 狀態,就是乙個系統在其生命週期中某一時刻的運 況,此...