董曉敏
摘 要 近年來,隨著高校不斷擴招和國家財政撥款的逐步下降,很多高校教學經費日趨緊張。除了需要多元化、多渠道籌措經費外,還需要科學合理的制定經費預算計劃和管理方案,以便最大限度的利用有限的資金。本文則主要在對Eclipse RCP平臺系統功能進行系統的介紹的基礎上,對其在學校經費測算系統中的設計與實現進行了研究。
關鍵詞 Eclipse RCP平臺 經費測算系統 設計與實現
中圖分類號:TP31 文獻標識碼:A
目前,我國大部分高校的經費管理工作,實質上是一種“報銷”型管理。這種管理方法既無法調動各教學單位、部門的積極性和創造性,增加市場觀念和成本意識,也不利于確定勞動成果同勞動者消耗和勞動占用之間的合理比例,以便合理配置教育資源,提高辦學活力和效益。
因此設計開發了一個基于Eclipse RCP平臺的學校經費測算系統,該系統功能方面主要實現了用戶登陸驗證、教學單位視圖、教學單位經費管理、系統幫助等模塊。
本系統使用java作為開發語言,Eclipse作為開發IDE。利用 Eclipse內置的Derby數據庫系統設計了經費測算系統所需的數據庫;在教學單位經費管理模塊中使用了GC繪圖技術和JFreeChart插件,畫出各項經費的比例餅圖、柱形圖和各個教學單位的測算經費堆棧圖,允許用戶瀏覽不同年度的堆棧圖,形象直觀;并利用POI插件,實現測算結果輸出到Excel表格的功能;在持久層,使用Hibernate框架,以面向對象的方式操作數據庫,方便快捷。在教學單位視圖模塊,通過屬性監聽模式實現數據的同步刷新。
用戶希望通過調整模型參數、確定分配技術確定經費分配,結果以Excel報表方式查看。調整模型參數時,需要從教學數據庫服務器獲得基礎數據。教務處、財務處、學校領導、教學單位具有不同的處理權限。調整模型參數只能在本地數據庫進行。
本系統有三大功能:基礎數據、測算數據和系統管理。內容包括為用戶表、教學單位課程表、教學單位表、教學單位年度基本數據表、年度測算結果表、公共參數表。它們的結構都是字段名、數據類型、長度、主鍵否、以及描述。
登錄界面, 用戶輸入正確的用戶名和密碼之后,點擊“登錄”按鈕。系統把輸入的用戶名和密碼提交到數據庫進行匹配驗證。本模塊使用用戶表,
用戶成功登錄之后,系統就會顯示教學單位情況,該模塊的主要功能有:默認顯示數據庫最近年份教學單位的基本數據,包括教學單位名稱、專業課和公共課狀態;如果教學單位當年度有專業課,則顯示一個小圖標代表;在標題欄提供年份組合框,可選擇不同年份數據的顯示;選中不同教學單位名稱時,則會顯示其課程明細數據和經費概覽餅圖。并且當教學單位視圖的數據發生變化時,其他相關視圖也能做出相應的響應,即實現數據同步刷新。
課程明細數據顯示與教學單位視圖年份組合框對應教學單位的課程明細數據;視圖標題欄自動顯示當前選中的教學單位名稱;視圖標題欄提供保存數據、測算經費、展開樹狀數據、關閉樹狀數據等5個圖標按鈕;數據歸類顯示。
經費概覽餅圖默認顯示與教學單位視圖年富組合框對應的第一個教學單位的經費測算餅圖,主要顯示五種數據:學生經費、專業培養費、公共課經費、人員經費和綜合業務費等
教學單位基本情況視圖的主要功能有:顯示全部教學單位的教學業務費比率、教學研究費比率、師生比、應收學費金額、各職稱人數等信息;視圖標題欄顯示:教學單位名稱+年份;各種費率數據格式化顯示為“X%”的形式。
設置教學單位公共參數顯示全校性參數;輸入修改全局性,例如本年應收金額、實收金額、年度擬付款總額、學生經費分割比等。提供上一年、下一年、保存數據等功能。最后利用測算模型進行計算,把計算結果輸出到Excel報表。用堆棧圖直觀顯示各教學單位學生經費、展業培養費、公共課經費的總體概況。
教學單位情況的同步模式采用監聽方式。某一個視圖作為被監聽方,其他相關視圖作為監聽方。當被監聽方的視圖狀態發生變化時,監聽方會覺察到這些變化并做出相應的反映。這種方法使得視圖之間的聯系比較松散。
在監聽方式中,存在兩種模式:
(1)屬性改變模式:存在一個屬性提供方,它暴露自己的某一個屬性,并接受相關監聽方的注冊。當這個屬性改變時,這些變化會通知監聽方。
(2)提供器—選擇監聽器模式:在這種模式下,存在提供器方和選擇監聽器方。提供器方就是被監聽方,把視圖界面的改變通知監聽方;而選擇監聽器就是監聽方,監聽變化做出響應。這種模式可以方便的實現視圖界面狀態改變產生的數據同步問題。
本系統具體實現如下:
首先,創建年份管理類YearManager。功能有兩個:一是將數據庫中的最小、最大年份取出并保存,所謂的最小年份就是經費測算數據庫中開始測算的年份,而最大年份則是經費測算的當前年份。另一個是保存當前年份。使用到的類有YearManager.java。
其次,創建屬性提供類CuryearPropertyChange。它擔當屬性改變監聽模式里的屬性提供方,負責屬性監聽的管理工作:激發屬性改變監聽事件,注冊屬性改變監聽器,注銷屬性改變監聽器。使用到的類有CuryearPropertyChange.java。
再次,創建標題欄加入年份組合框。從數據庫中查詢經過測算的年份。使用到的類有YearCombo.java和TeachUnitName.java。
最后,創建響應屬性改變事件,將教學大為視圖注冊為屬性監聽器。