朱偉華 劉志寶
摘 要:為了實現(xiàn)高職院校新生報到數(shù)據(jù)的信息化管理,為輔導(dǎo)員方便、準確、快捷的掌握新生報到數(shù)據(jù)提供服務(wù),特別是高職院校各個職能部門及時、方便地了解學(xué)校新生報到情況,提出構(gòu)建基于C#的高職新生報到信息管理系統(tǒng)?;赪eb Service技術(shù),采用C#.NET 2008+SQL Server 2000等網(wǎng)站開發(fā)技術(shù),設(shè)計系統(tǒng)總體架構(gòu)、功能模塊和后臺數(shù)據(jù)庫,給出了數(shù)據(jù)庫連接、安全訪問控制、典型問題解決方案;實現(xiàn)各部門對錄取新生信息、新生報到流程、報到新生信息等為一體的有效管理網(wǎng)絡(luò)應(yīng)用平臺。
關(guān)鍵詞:C#.NET2008;SQL數(shù)據(jù)庫;管理系統(tǒng)
中圖分類號:TP391 文獻標識碼:A
1 引言(Introduction)
隨著高等職業(yè)教育的快速發(fā)展及學(xué)生數(shù)量連年劇增,新生錄取信息、報道信息管理工作需要規(guī)范化、科學(xué)化。因此本文采用C#.NET 2008+SQL Server 2000技術(shù),開發(fā)出高職新生報到信息管理系統(tǒng)。
2 設(shè)計思想及設(shè)計目標(Design thinking and design
goals)
2.1 系統(tǒng)設(shè)計的思想
新生入學(xué)報到流程管理工作是學(xué)校一項重要的工作,需要學(xué)校的很多部門協(xié)調(diào)進行。使用新生報到信息管理系統(tǒng)可以減輕迎新生工作人員的工作量,而且可以減少很多人為不小心造成的錯誤。
設(shè)計和開發(fā)新生報到信息管理系統(tǒng)時,應(yīng)該注重以下幾點:
(1)該系統(tǒng)的高性能,使之響應(yīng)速度快,這樣不會在某時刻有很多報到新生積壓。
(2)注重系統(tǒng)的實用性,能夠滿足新生報到的所有功能需求。
(3)系統(tǒng)的穩(wěn)定性,這樣更能保證招生數(shù)據(jù)的安全性和完整性。
(4)系統(tǒng)界面美觀,交互性強,用戶操作流暢簡單。
(5)系統(tǒng)數(shù)據(jù)的維護性強,提供數(shù)據(jù)字典的定義的功能。
(6)嚴格控制用戶權(quán)限,以保證數(shù)據(jù)保密性。
2.2 系統(tǒng)設(shè)計的目標
數(shù)字化校園建設(shè)是每個學(xué)校發(fā)展并不斷完善的目標,隨著學(xué)校規(guī)模的擴大,招生人數(shù)的增加,學(xué)生信息數(shù)據(jù)的多樣性、煩瑣性,使用新生報到信息管理系統(tǒng)必將大大提高新生報到管理工作的效率。該系統(tǒng)設(shè)計應(yīng)該實現(xiàn)以下幾點目標:
(1)該系統(tǒng)應(yīng)該具有良好的系統(tǒng)架構(gòu),為系統(tǒng)的開發(fā)可拓展、實施具有分布性奠定良好基礎(chǔ)。
(2)本系統(tǒng)應(yīng)該在學(xué)?,F(xiàn)有設(shè)備上能夠?qū)崿F(xiàn)安裝簡單、運行可靠、性能良好的特點。
(3)同時還要界面友好,操作簡單,功能全面,能夠滿足學(xué)校新生報到的所有管理工作。
(4)我們還要注意今后新生報到存在一定的變化性,這樣在開發(fā)本系統(tǒng)時,要做到系統(tǒng)內(nèi)部結(jié)構(gòu)劃分合理,模塊要做到高內(nèi)聚低耦合,為該系統(tǒng)以后的模塊功能變化、增加新功能預(yù)留良好拓展空間。
(5)數(shù)字化校園的一項重要基礎(chǔ)就是信息共享,所以要考慮本系統(tǒng)數(shù)據(jù)的關(guān)聯(lián)性。
2.3 開發(fā)和運行環(huán)境選擇
本系統(tǒng)采用微軟的Visual Studio C#.NET 2008語言開發(fā),數(shù)據(jù)庫采用關(guān)系型數(shù)據(jù)庫管理系統(tǒng)SQL Server 2000。
2.4 功能設(shè)計
本系統(tǒng)分為系統(tǒng)管理員和系統(tǒng)操作員兩個用戶權(quán)限,其中系統(tǒng)管理員具有系統(tǒng)所有模塊的操作權(quán)限,系統(tǒng)操作員具有系統(tǒng)部分模塊的操作權(quán)限。主要功能模塊如圖1所示。
圖1 主要功能模塊
Fig.1 The main functional blocks
2.5 系統(tǒng)總體功能描述
主要采用DOTNET編程技術(shù)開發(fā)本信息管理系統(tǒng)。數(shù)據(jù)庫使用的是SQL Server 2000,使平臺擁有高效的速度,安全性能以及穩(wěn)定性。采用了Web Service技術(shù),支持異構(gòu)平臺間的互通,方便系統(tǒng)的組件集成,以及系統(tǒng)的分布式實施。功能如下:
(1)本系統(tǒng)可以設(shè)置招生省份、招生專業(yè)、招生方式、報考分類等信息,能夠?qū)崿F(xiàn)添加、刪除、修改、查詢、預(yù)覽、打印等功能。
(2)本系統(tǒng)可以針對各個省份的統(tǒng)一招生專業(yè)信息設(shè)置專業(yè)編碼。
(3)本系統(tǒng)可以針對本省份的對口招生專業(yè)信息設(shè)置專業(yè)編碼。
(4)可以設(shè)置本院校各個系部信息,并且給各系部分配專業(yè),能夠?qū)崿F(xiàn)信息的添加、刪除、修改、查詢、預(yù)覽、打印等功能。
(5)可以在學(xué)校內(nèi)部設(shè)置各個專業(yè)的編碼。
(6)可以實現(xiàn)各個專業(yè)的班級管理。
(7)可以查詢新生錄取信息、進行各省份錄取成績分析、按照要求生成生源統(tǒng)計表。
(8)打印新生報到單,指導(dǎo)新生報到流程,辦理報到手續(xù)。
(9)可以輸出新生報到明細表、生成新生報到率匯總表。
(10)可以按照省份、院系、專業(yè)輸出報到新生Excel表。
(11)新生專業(yè)變更等信息管理。
3 關(guān)鍵技術(shù)(Key technology)
3.1 數(shù)據(jù)庫的連接
本系統(tǒng)的數(shù)據(jù)庫交互操作完全是通過調(diào)用Web Service實現(xiàn)的,Web Service的數(shù)據(jù)庫連接是通過讀取配置文件參數(shù),動態(tài)決定數(shù)據(jù)庫連接的。
應(yīng)用程序與SQL Server 2000連接時,通常是要四個參數(shù),即:數(shù)據(jù)庫服務(wù)器地址、數(shù)據(jù)庫名稱、登錄用戶名、登錄密碼。所以我們會把上述四個參數(shù)取值寫到配置文件中,Web Service在首次啟動運行時,首先讀取配置文件參數(shù),然后才能決定索要操作的目標數(shù)據(jù)庫。這樣也為我們應(yīng)用程序的維護、安裝實施帶來很大方便,避免了反復(fù)修改程序代碼的工作。
3.2 主要數(shù)據(jù)庫操作類建立方法
本系統(tǒng)利用Web Service組件訪問數(shù)據(jù)庫,在Web Service組件中定義了系統(tǒng)與有關(guān)數(shù)據(jù)庫操作的函數(shù)集合,這樣使系統(tǒng)在數(shù)據(jù)交換、數(shù)據(jù)封裝、應(yīng)用程序集成等方面帶來很多好處。典型函數(shù)代碼列舉如下:
(1)執(zhí)行select SQL語句的函數(shù)代碼如下:
[WebMethod(Description="讀取數(shù)據(jù)表中的數(shù)據(jù),主要對應(yīng)select SQL語句")]
public DataSet Load_dict(string Select_str,string TabName)
{
string ErrString;
try
{
comStr=Select_str;
dsDict=new DataSet();
conn=new SqlConnection(cconStr);
conn.Open();
SqlDataAdapter1=new SqlDataAdapter(comStr, conn);
SqlDataAdapter1.Fill(dsDict,TabName);
}
catch (Exception ex)
{
dsDict=new DataSet();
ErrString=ex.Message.ToString();
}
conn.Close();
return dsDict;
}
(2)執(zhí)行insert、delete、update SQL語句的函數(shù)代碼如下:
[WebMethod(Description="執(zhí)行insert、delete、update Sql語法命令")]
public int ExcSql( string SqlStyStr )
{
SqlCommand Sqlcom;
int RetRow;
RetRow=0;
try
{
conn=new SqlConnection(cconStr);
Sqlcom=new SqlCommand(SqlStyStr,conn);
Sqlcom.Connection.Open();
RetRow=(int) Sqlcom.ExecuteNonQuery(); }
catch (Exception ex)
{ Session["errMess"]=ex.Message.ToString(); }
finally
{
conn.Close();
}
return RetRow;
}
3.3 安全訪問控制方法
(1)本系統(tǒng)采用了基于角色權(quán)限的控制方法
本系統(tǒng)可以有多個用戶,在添加用戶時指定其屬于哪類角色,進而決定了該用戶所擁有的系統(tǒng)操作權(quán)限。
本系統(tǒng)定義了兩個角色:系統(tǒng)管理員和系統(tǒng)操作員,系統(tǒng)管理員擁有本系統(tǒng)所有的操作權(quán)限;系統(tǒng)管理員只具有本系統(tǒng)部分模塊的操作權(quán)限。
(2)數(shù)據(jù)訪問標識控制技術(shù)
為了避免多用戶同時操作同一條數(shù)據(jù)記錄所帶來的問題,系統(tǒng)在訪問特定數(shù)據(jù)記錄時,更改該記錄的訪問標識以鎖定記錄,在為操作完畢之前,不允許其他用戶訪問。
(3)事物回滾管理技術(shù)
本系統(tǒng)的某些模塊功能允許對數(shù)據(jù)表中的數(shù)據(jù)同時進行增加、刪除、修改等操作,一次性與數(shù)據(jù)庫做同步更新。在此類功能實現(xiàn)時,應(yīng)用程序使用了異常處理結(jié)構(gòu),并在發(fā)生異常的處理程序中使用了事物回滾技術(shù),以保證數(shù)據(jù)的同步有效。
4 典型問題解決方案(Typical solutions to problems)
4.1 創(chuàng)建典型基礎(chǔ)類庫
本系統(tǒng)有很多模塊結(jié)構(gòu)類似,所以在設(shè)計開發(fā)時,首先創(chuàng)建了典型的基礎(chǔ)類庫,這樣在創(chuàng)建應(yīng)用模塊時,采用面向?qū)ο蟮睦^承技術(shù)就可以快速實現(xiàn)模塊窗體的開發(fā)工作,并且功能代碼只需要在指定結(jié)構(gòu)下重寫函數(shù)即可,大大提高了系統(tǒng)結(jié)構(gòu)清晰度,方便我們?nèi)蘸蟮木S護工作。
4.2 圖像存儲技術(shù)
圖像的存儲采用了數(shù)據(jù)庫存儲方式,這樣方便了數(shù)據(jù)的移植工作;還為其他系統(tǒng)提供數(shù)據(jù)來源提供方便。
4.3 水晶報表打印技術(shù)
本系統(tǒng)具有圖像的報表打印功能,并且在開發(fā)此功能時,發(fā)現(xiàn)了VS開發(fā)環(huán)境的不足之處,并提供了修正方法。圖像數(shù)據(jù)在應(yīng)用程序中的存儲、傳輸格式實際上是字節(jié)數(shù)組,但在使用VS環(huán)境時,并沒有應(yīng)用程序向水晶報表傳送時所需要的字節(jié)數(shù)組類型。修正方法是我們首先選擇VS提供的數(shù)據(jù)類型中的“byte”,然后人為在其添加“[]”才能實現(xiàn)圖像數(shù)據(jù)向水晶報表傳送字節(jié)數(shù)組數(shù)據(jù)的功能。
5 結(jié)論(Conclusion)
加強高職院校新生信息管理的最終目的就是要提高新生錄取信息、報道信息管理工作規(guī)范化、科學(xué)化。利用C#.NET 2008+SQL Server 2000技術(shù),能夠極大地提高新生報到管理工作的效率。
參考文獻(References)
[1] 王旭仁,宋蓓.高校圖書館研究室管理系統(tǒng)的設(shè)計與實現(xiàn)[J]. 計算機應(yīng)用與軟件,2010,27(11):91-94.
[2] 伍孝金,鄭江波.基于ASP的招生就業(yè)網(wǎng)站信息管理系統(tǒng)的設(shè) 計[J].計算機工程與設(shè)計,2006,27(4):2066-2069.
[3] 徐照興,劉武.基于B/S模式的高職畢業(yè)生就業(yè)數(shù)據(jù)管理系統(tǒng) 的設(shè)計與實現(xiàn)[J].計算機應(yīng)用與軟件,2012,29(9):44-48.
[4] 戴彬,楊穎.高校學(xué)生欠費信息語音系統(tǒng)的研究與設(shè)計[J].計 算機應(yīng)用與軟件,2014,8(8):35-38.
[5] 金旭亮..NET2.0面向?qū)ο缶庉嫿颐兀ǖ?版)[M].北京:電子工 業(yè)出版社,2008.
[6] 朱偉華.高職《VB程序設(shè)計》課程改革探索與實踐[J].無線 互聯(lián)科技,2014,11:191.
作者簡介:
朱偉華(1976-),男,碩士,副教授.研究領(lǐng)域:嵌入式技術(shù).
劉志寶(1980-),男,碩士,講師.研究領(lǐng)域:軟件開發(fā).