小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

OFBIZ2.0精簡版本應(yīng)用概論-3

 ShangShujie 2007-04-03


02年03月28日 11:18 互聯(lián)網(wǎng)


OFBIZ拒絕這種混亂,一套EntityEngine機(jī)制輕松解決上述所有問題。
1、 涉及1張表(實(shí)體)的增、刪、改、查,它提供一套處理機(jī)制(不到12個類,大約5千行代碼),應(yīng)用的規(guī)模是10000張表,它還是這套處理機(jī)制(不到12個類,大約5千行代碼),而且這些處理機(jī)制由JAVA程序高手生成和維護(hù),可以保證其合理性、可靠性和安全性。
2、 EntityEngine提供了一個構(gòu)造復(fù)雜sql操縱語句的機(jī)制,你可以根據(jù)需要隨時構(gòu)造任意復(fù)雜的sql語句,完成你想要做的事情,這樣你可以在開發(fā)過程中,隨時修改你的數(shù)據(jù)庫定義,OFBIZ在系統(tǒng)啟動時會自動加載并檢測數(shù)據(jù)庫中的不一致性和參考完整性。
3、 實(shí)體引擎大大簡化了涉及關(guān)系型數(shù)據(jù)庫的管理和維護(hù),但這還只是一小塊好處,大的好處是你在實(shí)現(xiàn)一個復(fù)雜需求的應(yīng)用時,實(shí)體引擎用為數(shù)不多的幾個類解決了你所有的問題,實(shí)現(xiàn)任意復(fù)雜的數(shù)據(jù)庫存取業(yè)務(wù)和商業(yè)邏輯,而且與需求的復(fù)雜度和數(shù)量無關(guān)。
4、 好處太多了,在使用的過程中,會進(jìn)一步的體會到。
1.5 錦上添花的服務(wù)引擎
服務(wù)框架(Services Framework)是OFBiz2.0 新增加的內(nèi)容。服務(wù)(Services)被定義成一些相對獨(dú)立的邏輯處理單元(服務(wù)具有業(yè)務(wù)邏輯處理的原子性),能夠被靈活的組合成不同的形式去實(shí)現(xiàn)不同的商業(yè)邏輯需求。服務(wù)有多種類型的實(shí)現(xiàn)形式:工作流(Workflow),(規(guī)則) Rules, Java程序(Java), 簡單對象訪問控制協(xié)議SOAP), 輕量級Java程序腳本語言解釋器(BeanShell)等等。 如果一個服務(wù)被定義成"java"類型,意味著實(shí)現(xiàn)該服務(wù)的機(jī)制可能就是Java類的一個static方法, 而且,OFBIZ提供的服務(wù)框架不限于使用在一個基于Web的應(yīng)用程序系統(tǒng)中。服務(wù)需要輸入一個Map形式的參數(shù),服務(wù)處理完畢后,返回的也是一個Map形式的結(jié)果集。這個思路是非常好的,因?yàn)镸ap類型的數(shù)據(jù)格式很容易被序列化(serialized,序列化成字節(jié)流),并且通過HTTP(或SOAP)的協(xié)議進(jìn)行存儲和傳輸。在OFBIZ里,服務(wù)被定義XML文件里,定義后的服務(wù)被分派給一個特定的 服務(wù)引擎(Service Engine) 。 服務(wù)引擎 具體負(fù)責(zé)以合適的方式進(jìn)行服務(wù)的定義、管理和調(diào)用。 因?yàn)榉?wù)不一定被綁定在某基于Web的應(yīng)用程序運(yùn)行環(huán)境中,所以服務(wù)處理的結(jié)果也就不一定會和某erquest請求的響應(yīng)reponse聯(lián)系在一起,這樣就允許服務(wù)可以在預(yù)先設(shè)置好的和時間點(diǎn)上定時觸發(fā)(因?yàn)樗恍枰粋€Http Request請求),一般是通過系統(tǒng)提供的 工作日程管理器(Job Scheduler) 運(yùn)行環(huán)境觸發(fā)(用定時器來控制對服務(wù)的調(diào)用)。
服務(wù)還可以互相調(diào)用調(diào)用,即一個服務(wù)被設(shè)置去調(diào)用任何其它的服務(wù)。這樣,我們可以用更小粒度的已經(jīng)定義好的服務(wù)組合成一個服務(wù)鏈,來完成一個比較大的任務(wù),而且這種組合是任意的,從已經(jīng)定義好的服務(wù)本身來講,是很容易復(fù)用的。使用不同的應(yīng)用程序系統(tǒng)中的服務(wù),可以通過創(chuàng)建一個"全局服務(wù)定義文件"只被定義一次(因?yàn)榉?wù)本身是實(shí)現(xiàn)了特定的商業(yè)邏輯,它和具體應(yīng)用的關(guān)系應(yīng)該是松耦合的),當(dāng)然,服務(wù)也可以通過一些限制,被指定為特定的應(yīng)用程序所用。
在一個基于Web的應(yīng)用系統(tǒng)中,服務(wù)可以被用來實(shí)現(xiàn)基于Web的事件(web events),利用服務(wù)實(shí)現(xiàn)事件處理,可以在服務(wù)框架內(nèi)最大可能的復(fù)用相對固定的一些業(yè)務(wù)邏輯。而且,服務(wù)還可以被定義成對可輸出的(exportable),意思是它們可以被系統(tǒng)外部的東西(可能是一個應(yīng)用系統(tǒng)或其它)遠(yuǎn)程訪問。 目前系統(tǒng)實(shí)現(xiàn)了一個基于簡單對象訪問控制協(xié)議(SOAP)的事件處理器,該事件處理器,就允許外部應(yīng)用通過SOAP協(xié)議對運(yùn)行(或定義)在其上的服務(wù)進(jìn)行遠(yuǎn)程訪問 。在將來,會有更多的遠(yuǎn)程調(diào)用形式被加到服務(wù)框架里
1.6 雙管齊下
實(shí)體引擎和服務(wù)引擎各有利弊,在實(shí)際應(yīng)用中,可以把服務(wù)引擎和實(shí)體引擎結(jié)合起來使用,實(shí)體引擎主要用于處理實(shí)體(Entities)對象的增、刪、改、查,服務(wù)引擎主要用于處理商務(wù)邏輯,這種商務(wù)邏輯的定義范圍,不大會遇到上面所說的要求一次查詢返回一個結(jié)果集這樣的服務(wù)定義(這完全可以用實(shí)體引擎來處理)。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多