白鈺劍 周莉瑩
摘 要:當前,全國普通高校網上招生錄取系統為高校招生提供了方便、可靠的信息,但是此系統在錄取后的統計數據,導入導出,分析數據,以及分班、打印通知書等功能還有很多的不足。論文針對實現對錄取后期數據的處理、分析、導入導出設計出了整體的解決方案,為提高高校招生的工作效率和質量,做出了較好的嘗試。
關鍵詞:高校招生;數據處理;導入導出
1.引言
招生工作是每個高校的重中之重工作,只有圓滿的完成招生工作,整個學校的各項工作才能有序地開展。招生工作中招生信息的處理是整個招生工作后期重要繁瑣的一環,需要和各個部門系統對接同時完成數據的統計分析用于下一年招生咨詢和招生計劃的制定工作。全國高考錄取信息處理系統是根據全國普通高校招生網上錄取應用軟件高校子系統的使用手冊和導出數據的特點,以及高效招生工作的內容和實際情況,使用HTML、Bootstrap、jQuery、JSP、Java、SQL Server等語言和框架,在MyEclipse開發平臺上,完成全國高考錄取信息處理系統的開發和設計,實現數據的導入導出、分班、打印通知書、統計信息等功能,以使每年的招生工作高效準確地完成。
1.1現狀分析
目前各高校的高考錄取信息處理系統,都采用第三方公司或私人開發的系統,價格昂貴和維護不變,同時,由于原有軟件架構本身的局限,有些功能的擴充也很難實現,直接用代碼二次開發不太現實,這些問題在各高校中普遍存在。各高校內其他部門系統和全國普通高校招生網上錄取應用軟件高校子系統之間缺少一個靈活易用的中間系統來處理新生數據,例如:對學校新生數據進行統一格式設置和導出,并按常規要求統計。全國高校錄取信息處理系統的開發,可使普通高校網上錄取系統與校內其他部門系統的銜接更緊密,充分共享大量數據,為校內其他系統提供準確數據,為進一步采用科學的方法統計并生成報表,分析出專業招生計劃執行情況和各省份學生報考專業動向等信息,為今后招生預測和決策提供重要依據。
1.2系統可行性分析
當前大多數高校還沒有一個系統提供校內各部門所需功能,通常各部門都有自己的系統和數據庫結構,例如:西安文理學院有迎新系統、教務系統、學生管理等系統,均使用每年招生的數據的所有記錄的不同字段作為各部門所用系統的基礎數據。全國高考錄取信息處理系統可以將全國普通高校招生網上錄取應用軟件高校子系統導出的數據整合為校內各部門所需數據,完成分班、通知書打印等任務,減輕和提高了招生辦工作人員的工作,因此本系統具有極大的實際用途。
本項目受西安文理學院大學生創新創業訓練計劃項目的資金資助,資金上上有了很好的保證。西安文理學院招生就業處第一線的工作人員在系統功能和業務流上提供了很多寶貴經驗,使本系統更貼切實際需求,而不是紙上談兵,同時提供歷年招生時導出的數據作為實驗數據,能夠真實準確地測試系統各項功能。本項目也得到了軟件學院領導和老師的大力支持,提供了場地、服務器和臺式機作為開發設備。各高校均有自己內部的局域網,并且局域網和外網之間有防火墻等安全設備作為安全保證,將本系統和數據放在內網服務器上,可以很好地保證數據的安全性。
2.系統開發與實現
2.1院系專業的初始化
每年院系、專業、班級數、招生數等信息都在變化,制作多個jsp頁面文件,分別用來新增、修改數據庫中的“專業”表和“班級”表中的記錄,作為后續導入數據等其他功能的初始化數據。同時提供導入院系、專業信息的功能,可導入“招生計劃全國普通高校招生來源計劃網上管理系統”導出的Excel格式文件。
2.2數據的導入
全國普通高校招生網上錄取應用軟件高校子系統導出的27個.dbf格式的表文件,系統使用SQL Server數據庫提前建立對應表。上傳.dbf文件時,使用POI以及IO流對文件進行行和列的處理SXSSFWorkbook wb=new SXSSFWorkbook(-1);先獲取一個workbook對象,然后循環加載,上傳到服務器端后,需要逐個讀取全部.dbf文件,將相應表中數據導入到SQL Server數據庫對應的表中,在此過程中需要對數據類型進行嚴格的檢驗和轉換,用SQL語句操作相關聯的表,導入到student表中。
2.3數據的導出
可以選擇不同字段、滿足條件的記錄導出成Access、Excel等格式文件,報給相關部門。使用POI,獲取workbook對象,先把第一行表頭(姓名學號)手動添加好,再用sql語句將數據寫入到輸出流中,從而實現數據導出到文件。
2.4考生信息的修改
通過創建一個jsp頁面對考生信息進行修改,涉及考生家庭地址、聯系電話、郵編、班級等信息進行修改。
2.5分班算法
采取相對合理的分班算法進行分班,具體的算法應根據公平合理的原則設計,分班算法先按院系、專業、學歷、科類、性別、省份、類別、總分對所有考生數據進行排序,根據“班級”表中該專業班級數,列如兩個班級,將排序第一的新生的班級信息更新為某專業1班,將排序第二個新生更行為某專業2班,以此類推,直到將本院系、專業、學歷的學生分完為止。接著開始下一個院系、專業、學歷的分班過程。在操作時,可選擇按學歷或全部進行分班。
2.6生成統計報表
根據工作中統計的實際要求,使用SQL語句進行查詢和統計所需信息,調用第三方插件,先動態生成Excel工作簿,并按照統計項向工作表的單元格逐個寫入統計信息并設置格式,最終生成Excel文件的統計報表,為來年招生咨詢提供資料,為招生計劃制定做出決策。
2.7錄取通知書的打印
先使用水晶報表編制好錄取通知書報表模板,在界面根據不同條件選擇,例如:省份、批次、學歷、學院、專業查詢所需數據作為報表數據源,動態生成分頁報表所用數據源,從而實現通知書和EMS封皮的批量打印。
3.結束語
高考招生錄取系統對接系統的開發從院校實際出發,結合高考錄取的特點,利用java和jsp技術,實現招生原始數據的整合分析,為高校錄取工作提供了技術支持。隨著高考政策和院校培養體系的成熟,對高考錄取工作提出了更高的要求,只有不斷地改進和實踐,才能滿足招生工作的需要,使高校招生工作高效、有序有效地進行。(作者單位:西安文理學院)
本論文作為西安文理學院大學生創新創業訓練計劃項目的階段性成果(項目編號201360)
參考文獻:
[1] 清華大學計算機系高校網上招生數據處理系統使用手冊[M].北京:教育部高校學生司,2002.
[2] 內格爾.C#高級編程(第8版)[M].北京:清華大學出版社,2013.