專利名稱:鐵路票務(wù)系統(tǒng)的客戶端及其實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)技術(shù),尤其涉及一種鐵路票務(wù)系統(tǒng)的客戶端及其實(shí)現(xiàn)方法。
背景技術(shù):
富客戶端(Rich Client)可以為用戶高質(zhì)量的用戶體驗(yàn),能讓用戶界面元素更加豐富,用戶操作更簡單,可使得應(yīng)用程序更加貼近用戶,且富客戶端采用了本地接口的調(diào)用,其不同于基于網(wǎng)絡(luò)(Web)瀏覽器的網(wǎng)上作業(yè),富客戶端的處理速度要比瀏覽器和服務(wù)器結(jié)構(gòu)(Browser/Server, B/S)結(jié)構(gòu)的應(yīng)用速度快。目前,鐵路票務(wù)系統(tǒng)的前端售票一般采用PowerBuilder技術(shù)開發(fā)工具來實(shí)現(xiàn),在利用PowerBuilder技術(shù)來開發(fā)前端售票端時(shí),開發(fā)成本較高,且開發(fā)出來的前端售票端程序復(fù)雜,開發(fā)周期長。而且,隨著票務(wù)系統(tǒng)對各種功能需求越來越多,導(dǎo)致前端售票端的開 發(fā)更加困難,且由于各種功能不斷增加,而每增加一種功能,就需要在原有開發(fā)程序基礎(chǔ)上重新進(jìn)行改進(jìn),導(dǎo)致程序的可擴(kuò)展性較差,不利于票務(wù)系統(tǒng)前端售票端的維護(hù)、升級(jí)和開發(fā)。綜上,現(xiàn)有鐵路票務(wù)系統(tǒng)的前端,即客戶端通常采用PowerBuilder技術(shù)開發(fā)得至IJ,使得客戶端的開發(fā)成本較高,客戶端維護(hù)、升級(jí)麻煩。
發(fā)明內(nèi)容
本發(fā)明提供一種鐵路票務(wù)系統(tǒng)的客戶端及其實(shí)現(xiàn)方法,可有效克服現(xiàn)有技術(shù)存在的問題,提高客戶端開發(fā)效率,且便于客戶端的維護(hù)和升級(jí)。本發(fā)明提供一種鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法,包括從組件庫中查找各功能組件,所述功能組件包括日期組件、車次組件、發(fā)站組件、到站組件、票種組件和席別組件;將查找的各功能組件加載在基于Eclipse內(nèi)核的平臺(tái)上。上述的鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法還可包括獲取業(yè)務(wù)插件,在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行業(yè)務(wù)插件,所述業(yè)務(wù)插件包括售票插件、改簽插件、退票插件和/或交班插件。上述的鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法還可包括獲取頁面插件,在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行頁面插件,所述頁面插件包括模型插件、視圖插件和控制器插件。本發(fā)明提供一種鐵路票務(wù)系統(tǒng)的客戶端,包括組件查找模塊,用于從組件庫中查找各功能組件,所述功能組件包括日期組件、車次組件、發(fā)站組件、到站組件、票種組件和席別組件;組件加載模塊,用于將查找的各功能組件加載在基于Eclipse內(nèi)核的平臺(tái)上。上述的鐵路票務(wù)系統(tǒng)的客戶端還可包括插件獲取模塊,用于獲取業(yè)務(wù)插件,所述業(yè)務(wù)插件包括售票插件、改簽插件、退票插件和/或交班插件;插件運(yùn)行模塊,用于在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行業(yè)務(wù)插件。上述的鐵路票務(wù)系統(tǒng)的客戶端中,所述插件獲取模塊,還可用于獲取頁面插件,所述頁面插件包括模型插件、視圖插件和控制器插件;所述插件運(yùn)行模塊,還可用于在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行頁面插件。本發(fā)明提供的鐵路票務(wù)系統(tǒng)的客戶端及其實(shí)現(xiàn)方法,通過采用Eclipse RCP基于插件技術(shù)的富客戶端框架開發(fā)得到客戶端,通過將各功能組件化、業(yè)務(wù)插件化,可充分發(fā)揮插件化系統(tǒng)的優(yōu)勢,提高客戶端開發(fā)的便利性,降低客戶端開發(fā)成本;同時(shí),通過采用功能組件化,使得客戶端的維護(hù)和升級(jí)更加方便,降低客戶端維護(hù)和升級(jí)成本。
圖I為Eclipse體系的結(jié)構(gòu)示意圖;圖2為本發(fā)明鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法實(shí)施例的流程示意圖;圖3為本發(fā)明實(shí)施例中實(shí)現(xiàn)到站功能進(jìn)行組件化后得到的界面顯示示意圖;圖4為本發(fā)明鐵路票務(wù)系統(tǒng)的客戶端實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。鑒于現(xiàn)有鐵路票務(wù)系統(tǒng)的客戶端存在的缺陷,發(fā)明人提供了采用Eclipse富客戶端平臺(tái)(Rich Client Platform,RCP)開發(fā)的鐵路票務(wù)系統(tǒng)的客戶端。其中,Eclipse RCP提供了豐富的界面控件,充分發(fā)揮了插件化系統(tǒng)的優(yōu)勢,可以將應(yīng)用做到模塊化、動(dòng)態(tài)化;為滿足票務(wù)系統(tǒng)的業(yè)務(wù)要求、對響應(yīng)速度以及操作方便快捷性等要求,本發(fā)明鐵路票務(wù)系統(tǒng)的客戶端采用富客戶端技術(shù);由于Eclipse RCP插件式富客戶端技術(shù)是基于Java,使得客戶端的維護(hù)便利,開發(fā)成本較低。為對本發(fā)明技術(shù)方案有更好的了解,首先對Eclipse RCP進(jìn)行說明。圖I為Eclipse體系的結(jié)構(gòu)示意圖。Eclipse RCP是用于構(gòu)建富客戶端應(yīng)用功能強(qiáng)大的框架,表面上,其將主機(jī)平臺(tái)和本地外觀、窗口管理、可定制性(具有可疊加編輯器和視圖)緊密整合在一起;而1^^的核心是將功能和靈活性完全發(fā)揮的開放式服務(wù)平臺(tái)技術(shù)(Open Service Gateway Initiative, OSGI)-兼容組件模型。Eclipse RCP 可以給予開發(fā)者創(chuàng)建可擴(kuò)展客戶端應(yīng)用程序的能力,也給廣大Java開發(fā)者提供了編寫具有特色鮮明的本地觀感及使用體驗(yàn)的富客戶端代碼的能力,是一種通用工具平臺(tái),可提供功能豐富的開發(fā)環(huán)境,允許開發(fā)者高效率的創(chuàng)建一些能夠無縫集成到Eclipse平臺(tái)中的工具,其中,Eclipse的體系結(jié)構(gòu)詳細(xì)請見圖I所示。圖2為本發(fā)明鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法實(shí)施例的流程示意圖。如圖2所示,本實(shí)施例方法可包括以下步驟步驟101、從組件庫中查找各功能組件,該功能組件可包括日期組件、車次組件、發(fā)站組件、到站組件、票種組件和席別組件;步驟102、將查找的各功能組件加載在基于Eclipse內(nèi)核的平臺(tái)上。本實(shí)施例中,客戶端是采用Eclipse RCP基于插件技術(shù)的富客戶端框架開發(fā)得到的,其中所需的各功能組件存儲(chǔ)于組件庫中,這樣客戶端在運(yùn)行時(shí),可動(dòng)態(tài)發(fā)現(xiàn)各功能組件,并將功能組件加載到基于Eclipse內(nèi)核的平臺(tái)上,從而使得各功能組件的開發(fā)更加便利,且需要新的功能時(shí),只要增加新的功能組件即可,使得客戶端的開發(fā)、維護(hù)和升級(jí)均非常方便。本實(shí)施例中,客戶端啟動(dòng)時(shí),可實(shí)時(shí)獲取業(yè)務(wù)插件和頁面插件,并在基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行業(yè)務(wù)插件和頁面插件,從而可為用戶提供完整的界面,以及使用相應(yīng)的業(yè)務(wù),其中,業(yè)務(wù)插件可包括售票插件、改簽插件、退票插件和/或交班插件;頁面插件可包 括模型插件、視圖插件和控制器插件。在鐵路票務(wù)系統(tǒng)中,通過采用Eclipse RCP平臺(tái)實(shí)現(xiàn)客戶端,可有效利用富客戶端和插件技術(shù)的便利性、本地觀感及使用體驗(yàn)等優(yōu)點(diǎn),解決票務(wù)系統(tǒng)對環(huán)境即客戶機(jī)/服務(wù)器網(wǎng)(Client/Server, C/S)架構(gòu)的要求、操作的快捷性、響應(yīng)速度、界面元素組合的靈活性、本地設(shè)備支持、多協(xié)議的支持、便于更新升級(jí)等等問題。在整個(gè)鐵路票務(wù)系統(tǒng)中,當(dāng)用戶從前端頁面發(fā)起一個(gè)請求,如申請一張席位,前端將請求的數(shù)據(jù)發(fā)送到后臺(tái),后臺(tái)將處理的數(shù)據(jù)返回給前臺(tái),最終前臺(tái)作出響應(yīng),將席位顯示在頁面,本實(shí)施例客戶端采用MVC的設(shè)計(jì)模式,整個(gè)過程是按照Eclipse RCP插件模式,將模型、視圖和控制器分成不同的插件,可有效縮短開發(fā)時(shí)間,提高開發(fā)效率。本實(shí)施例中,前臺(tái)和后臺(tái)之間的通信可采用輕量級(jí)的數(shù)據(jù)交換格式(JavaScript Object Notation,JSON)協(xié)議,也可支持多協(xié)議,例如可擴(kuò)展標(biāo)記語言(Extensible Markup Language, XML)等。本實(shí)施例中,通過將業(yè)務(wù)層上的各業(yè)務(wù)插件化,即將鐵路票務(wù)系統(tǒng)中的售票、改簽、退票、交班等模塊化、插件化,使得開發(fā)人員在開發(fā)過程中,只需要關(guān)心自己的業(yè)務(wù)插件,核心的功能代碼可封裝在公用的插件中,不需要其他的開發(fā)人員關(guān)心,這樣數(shù)據(jù)處理方式和傳輸協(xié)議的變化不會(huì)影響到其他開發(fā)人員開發(fā)的業(yè)務(wù)。相對優(yōu)先級(jí)比較高的業(yè)務(wù),可以增加開發(fā)人員,低優(yōu)先級(jí)的業(yè)務(wù)可以適當(dāng)延后,但不會(huì)影響整個(gè)系統(tǒng)的運(yùn)行,等低優(yōu)先級(jí)的業(yè)務(wù)開發(fā)完后直接以插件的形式加入整個(gè)系統(tǒng),同時(shí)也不會(huì)影響系統(tǒng)的運(yùn)行,使得系統(tǒng)對設(shè)備有很好的支持,且可通過Java本地訪問(Java Native Access, JNA)工具封裝票務(wù)系統(tǒng)中服務(wù)接口和外部設(shè)備之間的通信。本實(shí)施例中,將業(yè)務(wù)插件中的日期、發(fā)站、到站、票種、席別等功能操作進(jìn)行組件化,得到日期組件、發(fā)站組件、到站組件、票種組件以及席別組件,并存儲(chǔ)在組件庫中,這樣可有效節(jié)省開發(fā)人員的時(shí)間和效率,且各功能組件可被重復(fù)使用,并可應(yīng)用于不同的業(yè)務(wù)插件中。本實(shí)施例中,對日期、發(fā)站、到站、票種、席別等功能操作進(jìn)行組件化,當(dāng)客戶的業(yè)務(wù)發(fā)生變化時(shí),可以在原來的頁面不做任何變化的基礎(chǔ)上,添加新的業(yè)務(wù)功能,例如,需要在售票頁面增加銀行卡支付功能時(shí),只需要在頁面添加對應(yīng)的業(yè)務(wù)插件和功能組件,而不會(huì)影響原有的功能,使得界面元素組合靈活。圖3為本發(fā)明實(shí)施例中實(shí)現(xiàn)到站功能進(jìn)行組件化后得到的界面顯示示意圖。如圖3所示,該組件實(shí)現(xiàn)的功能如下在選擇好日期后,輸入車次,發(fā)站一般都默認(rèn)為本站,將日期和車次請求到后臺(tái),后臺(tái)會(huì)返回車站信息列表,并出現(xiàn)到站組件,默認(rèn)的顯示選中的為終到站,通過鍵盤的上下鍵可以選擇用戶確定的到站,或者可以通過到站列表中的序號(hào)來進(jìn)行選擇用戶確定的到站,也可以在到站輸入框中站碼或者站拼音來進(jìn)行選擇確定,這樣可有效節(jié)約售票員的操作時(shí)間、減少操作的復(fù)雜性。此外,通過將到站實(shí)現(xiàn)組件化,這樣在退票、改簽等插件的頁面中可以直接使用,大大減少了開發(fā)時(shí)間,提高開發(fā)效率。本發(fā)明實(shí)施例鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法,通過采用Eclipse RCP基于插件技術(shù)的富客戶端框架開發(fā)得到客戶端,通過將各功能組件化、業(yè)務(wù)插件化,可充分發(fā)揮插件化系統(tǒng)的優(yōu)勢,提高客戶端開發(fā)的便利性,降低客戶端開發(fā)成本;同時(shí),通過采用功能組件化,使得客戶端的維護(hù)和升級(jí)更加方便,降低客戶端維護(hù)和升級(jí)成本。圖4為本發(fā)明鐵路票務(wù)系統(tǒng)的客戶端實(shí)施例的結(jié)構(gòu)示意圖。如圖4所示,本實(shí)施例客戶端包括組件查找模塊I和組件加載模塊2,其中,組件查找模塊I用于從組件庫中查找各功能組件,該功能組件可包括日期組件、車次組件、發(fā)站組件、到站組件、票種組件和席別組件;組件加載模塊2用于將查找的各功能組件加載在基于Eclipse內(nèi)核的平臺(tái)上。 如圖4所示,本實(shí)施例客戶端還包括有插件獲取模塊3和插件運(yùn)行模塊4,其中,插件獲取模塊3用于獲取業(yè)務(wù)插件,該業(yè)務(wù)插件包括售票插件、改簽插件、退票插件和/或交班插件;插件運(yùn)行模塊4用于在基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行業(yè)務(wù)插件。此外,該插件獲取模塊3還用于獲取頁面插件,頁面插件包括模型插件、視圖插件和控制器插件;插件運(yùn)行模塊4還用于在基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行頁面插件。本發(fā)明實(shí)施例客戶端采用Eclipse RCP基于插件技術(shù)的富客戶端框架開發(fā)得到,通過將鐵路票務(wù)系統(tǒng)中的各功能組件化,并充分發(fā)揮插件化系統(tǒng)的優(yōu)勢,可有效提高客戶端開發(fā)進(jìn)度,降低開發(fā)成本,且客戶端的維護(hù)、升級(jí)方便。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括R0M、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。最后應(yīng)說明的是以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述實(shí)施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然可以對前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法,其特征在于,包括 從組件庫中查找各功能組件,所述功能組件包括日期組件、車次組件、發(fā)站組件、到站組件、票種組件和席別組件; 將查找的各功能組件加載在基于Eclipse內(nèi)核的平臺(tái)上。
2.根據(jù)權(quán)利要求I所述的鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法,其特征在于,還包括 獲取業(yè)務(wù)插件,在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行業(yè)務(wù)插件,所述業(yè)務(wù)插件包括售票插件、改簽插件、退票插件和/或交班插件。
3.根據(jù)權(quán)利要求I所述的鐵路票務(wù)系統(tǒng)的客戶端實(shí)現(xiàn)方法,其特征在于,還包括 獲取頁面插件,在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行頁面插件,所述頁面插件包括模型插件、視圖插件和控制器插件。
4.一種鐵路票務(wù)系統(tǒng)的客戶端,其特征在于,包括 組件查找模塊,用于從組件庫中查找各功能組件,所述功能組件包括日期組件、車次組件、發(fā)站組件、到站組件、票種組件和席別組件; 組件加載模塊,用于將查找的各功能組件加載在基于Eclipse內(nèi)核的平臺(tái)上。
5.根據(jù)權(quán)利要求4所述的鐵路票務(wù)系統(tǒng)的客戶端,其特征在于,還包括 插件獲取模塊,用于獲取業(yè)務(wù)插件,所述業(yè)務(wù)插件包括售票插件、改簽插件、退票插件和/或交班插件; 插件運(yùn)行模塊,用于在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行業(yè)務(wù)插件。
6.根據(jù)權(quán)利要求4所述的鐵路票務(wù)系統(tǒng)的客戶端,其特征在于,所述插件獲取模塊,還用于獲取頁面插件,所述頁面插件包括模型插件、視圖插件和控制器插件; 所述插件運(yùn)行模塊,還用于在所述基于Eclipse內(nèi)核的平臺(tái)上運(yùn)行頁面插件。
全文摘要
本發(fā)明公開了一種鐵路票務(wù)系統(tǒng)的客戶端及其實(shí)現(xiàn)方法。該方法包括從組件庫中查找各功能組件,所述功能組件包括日期組件、車次組件、發(fā)站組件、到站組件、票種組件和席別組件;將查找的各功能組件加載在基于Eclipse內(nèi)核的平臺(tái)上。本發(fā)明鐵路票務(wù)系統(tǒng)的客戶端具有較低的開發(fā)成本,便于對客戶端進(jìn)行維護(hù)和升級(jí)。
文檔編號(hào)G06F9/44GK102779034SQ20111014157
公開日2012年11月14日 申請日期2011年5月27日 優(yōu)先權(quán)日2011年5月13日
發(fā)明者李吉生, 李峰, 李良文, 王云, 邵曉風(fēng), 陳靖, 黃偉偉 申請人:易程(蘇州)軟件股份有限公司