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