對於mbean的實現結構做了調整,主要包括兩個方面:
1.原來的實現方式是將兩個主要的外層element實現為mbean,其餘的element都作為子物件處理。雖然功能上可以完成需要,但是缺點在於mbean的實現和操作都比較複雜,維護起來也比較麻煩。新的實現方式是將所有element都作為物件處理(只需要拿到最外層的element物件,其餘都可以作為它的子物件得到),而只將管理部分的邏輯(包括初始化,讀寫物件,儲存,恢復等操作)實現為mbean,這樣使得實現,操作和維護都比較簡單,而且更加直觀。
2.原來的實現沒有考慮客戶端更改配置物件後的儲存和生效等問題,新的實現將這些功能作為管理邏輯實現為mbean,這樣客戶端在更改了配置物件後可以有選擇性的決定是不是要儲存並寫入配置檔案,或者放棄修改恢復到上次的儲存狀態。
補充:對於修改實現結構的具體原因及分析過程如下:必須修改的主要原因是原來的結構將配置物件直接對映為mbean,這樣如果客戶端修改了配置,會直接影響到服務端的執行狀態,而實際上我們是不希望這樣的,也就是說可能有些配置需要更改後即時生效,有些卻不需要(或者底層不支援)。基於這種想法,會有幾種解決方案:一種是不修改原來的mbean,而在其基礎上實現一層管理mbean;第二種就是上面兩點中說明的方式,即捨棄原來的mbean,只做一層管理用的mbean,配置項都表現為物件來操作。這裡選擇了第二種實現方案,原因是現在看來已經不需要再把配置項這層內容實現為mbean,而只需要管理一層的邏輯,這樣不但使層次清晰,而且簡化了**,以後配置如果擴充套件了,只需要增加或修改相應的配置類實現,而不必做相應的mbean修改。至此,已經解決了目前所遇到的問題。
讀寫配置檔案
windows作業系統專門為此提供了6個api函式來對配置設定檔案進行讀 寫 getprivateprofileint 從私有初始化檔案獲取整型數值 getprivateprofilestring 從私有初始化檔案獲取字串型值 getprofileint 從win.ini 獲取整數值 getprof...
讀寫配置檔案
procedure curstepchanged curstep tsetupstep varsetupname string inipath string begin case curstep of ssinstall 複製檔案前 begin end sspostinstall 完成複製 begi...
讀寫配置檔案
寫配置檔案 include include include include using std cout using std endl int main int nlen strlen d myinifile.ini 16 nlen strlen lppath 0 strcpy s lppath,s...