王一寅
摘 要 本文系統(tǒng)是專門針對選課制高等院校日常教務管理而開發(fā)的系統(tǒng)。隨著學生及高校開設課程的數(shù)量的不斷擴大,對學生學籍及成績管理的需求也越來越多,特別是進入信息時代以后,傳統(tǒng)的學生選課成績管理系統(tǒng)早已不能適應時代的發(fā)展,在時效性、數(shù)據(jù)流過程中的準確性上,都已不能滿足高等院校日常教務管理過程中的新要求。網(wǎng)絡學生選課成績管理系統(tǒng)取代了原來的傳統(tǒng)計算機管理系統(tǒng),它采用了大型數(shù)據(jù)庫,不僅保證了數(shù)據(jù)的準確性,還提供了從選課、成績查詢、成績登錄、學籍管理、教師管理等一系列新的管理方案;從根本上解決了學生選課、成績管理工作中的問題。
關鍵詞 JAVA SWT SQL C/S
中圖分類號:TP31 文獻標識碼:A
1系統(tǒng)需求規(guī)格說明
本系統(tǒng)力圖以圖形化界面的形式向學生、教師、及系統(tǒng)管理員提供相應的選/退課、成績查詢,成績登錄,學生學籍管理及教師信息管理等功能的實現(xiàn)。通過圖形界面上的簡單鼠標及鍵盤操作實現(xiàn)系統(tǒng)功能。
本軟件系統(tǒng)的最終用戶包括在校的學生、教師及系統(tǒng)管理員。
學生可以以自己的學號及預先注冊好的登錄密碼進行登錄,進入選/退課窗口,以學期的不同進行相應的選課和退課,并且可以查看自己的各個學期的課程成績及學分完成情況。
教師可以以自己的工號及預先注冊好的登錄密碼進行登錄,進入教師管理窗口,并且可以根據(jù)不同的學期選擇自己教授的課程,對學生的成績進行登錄和修改。
系統(tǒng)管理員則可以以管理員的身份登錄系統(tǒng)管理窗口,對數(shù)據(jù)庫中相應的學生的學籍及教師信息進行修改。
2應用開發(fā)的實現(xiàn)
2.1總體設計
系統(tǒng)采用基于J2SE平臺的框架結構。系統(tǒng)分成三層設計:顯示層、業(yè)務邏輯層、數(shù)據(jù)庫層;
顯示層:顯示層通圖形化界面使得用戶可以對系統(tǒng)進行操作和控制,采用圖形界面來表示數(shù)據(jù),使用戶操作時感覺更直觀;
業(yè)務層:每一個業(yè)務封裝了一項業(yè)務操作,如果某項業(yè)務規(guī)則改變了,只需要修改對應的業(yè)務類即可,各個業(yè)務間互相獨立,通過調用數(shù)據(jù)庫層獲得數(shù)據(jù)。便于程序維護或擴展;
數(shù)據(jù)層:封裝了如數(shù)據(jù)庫連接、釋放,SQL語句的執(zhí)行等一系列基本的數(shù)據(jù)庫操作,將數(shù)據(jù)庫操作與業(yè)務分離開,形成獨立的一塊,供業(yè)務層調用。
2.2結構設計
模塊結構設計如下:
顯示層——模塊名稱:圖形界面。編號:project -001。概述:為用戶提供的可以進行相關操作的圖形界面。功能:進行登錄;選課、查分數(shù);成績登錄;學籍管理、教師管理。輸入:鼠標單擊、文本框輸入或下拉列表。輸出:SWT圖形界面的表格形式。調用關系:發(fā)送相關操作請求致業(yè)務邏輯層。備注:在桌面窗口上顯示。
業(yè)務層——模塊名稱:業(yè)務邏輯。編號:project -002。概述:為圖形化界面?zhèn)鱽淼恼埱筮M行相應的服務。涉及數(shù)據(jù):學生學號、選課學期、教師號、查詢學期及數(shù)據(jù)庫中相關數(shù)據(jù)。功能:登錄驗證、選課操作、返回分數(shù)、返回成績、修改學生及教師信息。輸入:學生學號、教工號、課程號、學期、選課/退課、刪除/添加記錄。輸出:相應表格數(shù)據(jù)(表格元素item形式)。調用關系:發(fā)送相關操作請求數(shù)據(jù)庫層。備注:返回表格的item元素給圖形界面相應的表格。
數(shù)據(jù)層——模塊名稱:數(shù)庫據(jù)層。編號:project -003。概述:接收業(yè)務邏輯層發(fā)來的請求并對數(shù)據(jù)庫進行相應操作,返回結果。涉及數(shù)據(jù):學生表、教師表、課程表、選課表。功能:對數(shù)據(jù)庫進行查詢、更新操作返回結果集。輸入:學生學號、教工號、課程號、學期、選課/退課、刪除/添加記錄。輸出:相應的查詢/更新結果集。調用關系:發(fā)送相關操作結果集致業(yè)務邏輯層。備注:返回相應的查詢/更新結果集。
2.3系統(tǒng)數(shù)據(jù)結構設計
邏輯結構設計要點
用戶有:學生、教師、系統(tǒng)管理員3種不同的角色;
用戶以不同的身份登錄系統(tǒng)進入的界面是不同的,學生對應選課窗口,教師對應教師管理窗口,管理員對應管理員窗口,不同的窗口界面提供不同的操作;
選課窗口:可以查看已選課程,已修(有成績)課程,選擇學期,查看不同學期開設的課程,選課,退課,查看成績及學分情況;
教師管理窗口:提供該教師教授課程的信息、選擇該課程學生的信息的查詢,修改(登錄)學生成績;
管理員窗口:可以查詢課程信息、教師信息、學生信息、修改教師信息、修改學生信息。
3技術難點與要點
3.1SWT圖形界面
本系統(tǒng)開發(fā)過程中SWT圖形化界面中的技術難點在于表格中每行元素的填充及修改刷新。
從數(shù)據(jù)庫中將需要的數(shù)據(jù)以字符串數(shù)組形式傳遞給TableItem對象數(shù)組,然后對相應的表格進行元素的填充。此處的難點在于對表格的列內容及數(shù)據(jù)庫操作返回的數(shù)組各個元素的內容對應的表格列屬性要清晰,獲取數(shù)據(jù)庫中相關的信息并以字符串數(shù)組形式返回結果
還使用到了類RowsInC用來存放從數(shù)據(jù)庫中取得的每條記錄的結果集內容。
3.2數(shù)據(jù)庫操作
本系統(tǒng)的數(shù)據(jù)庫連接操作方法的實現(xiàn)全部由Connector包中的DBConnect類提供,連接數(shù)據(jù)庫的業(yè)務邏輯由相應的DBOPs包中的DB開頭的類來實現(xiàn)。
數(shù)據(jù)庫完整性約束通過觸發(fā)器保證了本系統(tǒng)中對數(shù)據(jù)庫數(shù)據(jù)的操作都在合法范疇之內。