新聞中心
搭建動態(tài)化的系統(tǒng)是作為Java開發(fā)人員一直就非常追求的目標(biāo),一個系統(tǒng)能夠動態(tài)化就意味著:

公司主營業(yè)務(wù):成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出南安免費(fèi)做網(wǎng)站回饋大家。
編輯推薦:OSGi入門與實(shí)踐全攻略
◆ 添加新功能時(shí)不需要重啟系統(tǒng);
◆ 修改已存在的功能時(shí)不需要重啟系統(tǒng);
◆ 刪除一些不需要的功能時(shí)不需要重啟系統(tǒng);
◆ 修改系統(tǒng)中的配置時(shí)可以不需要重啟系統(tǒng)即刻生效;
◆ 系統(tǒng)的業(yè)務(wù)行為可動態(tài)的改變。
也許習(xí)慣了傳統(tǒng)Java開發(fā)方式的人而言,沒有這些動態(tài)化也沒什么,但不可否認(rèn),這些動態(tài)化的特征還是非常吸引人的,尤其是如果能很容易就獲得這些好處,那么自然就不會錯過這些好處了,基于OSGi可以很容易的讓我們獲取到這些好處,對于上面所描述的系統(tǒng)的動態(tài)化的特征可以歸納為這么三點(diǎn):
◆ 模塊的動態(tài)化:新增、修改、刪除以及擴(kuò)展;
◆ 配置的動態(tài)化;
◆ 行為的動態(tài)化。
下面就來看看基于OSGi是怎么樣來構(gòu)成這樣的動態(tài)化的系統(tǒng)的。
◆ 模塊的動態(tài)化:新增、修改、刪除以及擴(kuò)展;
● 新增
對于模塊的新增,在OSGi可以通過在控制臺中使用install命令去安裝,或者調(diào)用BundleContext的installBundle方法去安裝新的模塊;
● 修改
當(dāng)修改了模塊后,只需在控制臺中使用update命令去更新模塊,或者通過調(diào)用BundleContext.getBundle(Bundle的id).update();
● 刪除
當(dāng)需要刪除不需要了的模塊時(shí),只需在控制臺中使用uninstall命令去刪除,或者通過調(diào)用BundleContext.getBundle(Bundle的id).uninstall();
● 擴(kuò)展
對于模塊的擴(kuò)展,可以使用OSGi所支持的調(diào)用多服務(wù)的方式或者使用Equinox提供的擴(kuò)展點(diǎn)的方式來實(shí)現(xiàn)。
◆ 配置的動態(tài)化
對于配置的動態(tài)化方面,使用OSGi的Configuration Admin Service(簡稱CM)可以很容易的實(shí)現(xiàn),使用CM使得系統(tǒng)中的配置可以采用統(tǒng)一的形式去管理、動態(tài)的通知變化以及使用。
◆ 行為的動態(tài)化
系統(tǒng)在運(yùn)行中要根據(jù)業(yè)務(wù)的需求選擇相應(yīng)的服務(wù)是經(jīng)常會碰到的需求,例如一份文件在某種情況下可能需要進(jìn)行存儲,而在另一種情況下可能是需要進(jìn)行提取信息并存儲為其他文件,由于OSGi支持服務(wù)選擇時(shí)的過濾(如context.getAllServiceReferences(服務(wù)接口完整類名,"(key=db)")),使得系統(tǒng)可以在運(yùn)行時(shí)根據(jù)需求來選擇或配置使用相應(yīng)的服務(wù),而OSGi同時(shí)又支持了服務(wù)的動態(tài)化的管理,當(dāng)服務(wù)可用時(shí)會自動的通知,當(dāng)其不可用時(shí)同樣會自動的通知,這就保證了開發(fā)人員在使用服務(wù)時(shí)可做出相應(yīng)的處理。
如果覺得你所設(shè)計(jì)的系統(tǒng)需要這些動態(tài)化的特征的話,那么建議使用下OSGi(推薦的OSGi框架:Equinox)試試,或者可以參考下OSGi的實(shí)現(xiàn)方法自己去實(shí)現(xiàn)所需要的動態(tài)化的特征。
網(wǎng)頁名稱:基于OSGi的動態(tài)化系統(tǒng)搭建
標(biāo)題網(wǎng)址:http://fisionsoft.com.cn/article/dpigjhe.html


咨詢
建站咨詢
