陳彥CHEN Yan;張曉玲ZHANG Xiao-ling;韓愛(ài)霞HAN Ai-xia
(河北工業(yè)職業(yè)技術(shù)學(xué)院,石家莊 050091)
(Hebei College of Industry and Technology,Shijiazhuang 050091,China)
1.1 開(kāi)發(fā)技術(shù) 本系統(tǒng)結(jié)合學(xué)院實(shí)際需求,圍繞用戶特點(diǎn)進(jìn)行人性化設(shè)計(jì),本系統(tǒng)基于B/S 模式,采用JSP 語(yǔ)言來(lái)編寫(xiě),并用SQL 進(jìn)行連接,整個(gè)系統(tǒng)是JSP+JavaBeans+SQL 三層模式。
1.2 系統(tǒng)設(shè)計(jì)模式 本系統(tǒng)采用MVC 設(shè)計(jì),即Mode-View-Controller。MVC 先將項(xiàng)目劃分為三大模塊,再分別對(duì)其項(xiàng)目元素進(jìn)行拆解。①M(fèi)odel:用于保存實(shí)體部分,保存了某些算法功能以及讀寫(xiě)資料的功能;②View:用來(lái)顯示結(jié)果,并呈現(xiàn)給用戶;③Control:將由View 傳來(lái)的任務(wù)分配給特定的Model 處理,再將處理結(jié)果及時(shí)返回至View。
2.1 系統(tǒng)主要模塊劃分本系統(tǒng)根據(jù)實(shí)際需求劃分了四大功能模塊,即管理員權(quán)限子模塊、創(chuàng)建班級(jí)子模塊、登錄子模塊、數(shù)據(jù)庫(kù)模塊,同時(shí)管理權(quán)限模塊又包括四個(gè)子模塊,即留言功能、刪除功能、更改功能和查詢功能,詳見(jiàn)圖1。
圖1 系統(tǒng)主要模塊劃分
2.2 用戶身份驗(yàn)證功能的設(shè)計(jì) 為保證系統(tǒng)用戶的安全性與合法性,用戶在每次登陸時(shí)需進(jìn)行身份驗(yàn)證。一般地,合法的用戶賬號(hào)及權(quán)限等會(huì)存于服務(wù)器端的Session對(duì)象中。而Session 對(duì)象只保存局部信息,每個(gè)用戶與其Session 是一一對(duì)應(yīng)的,這就有效地提升了系統(tǒng)訪問(wèn)的安全性,保護(hù)了用戶隱私。
2.3 創(chuàng)建新班級(jí)設(shè)計(jì)功能的設(shè)計(jì) 用戶只有在完成注冊(cè)后才能創(chuàng)建班級(jí),班級(jí)名被設(shè)定為數(shù)據(jù)庫(kù)中班級(jí)表格的主鍵,在系統(tǒng)中必須遵循主鍵唯一的原則,創(chuàng)建時(shí)必須保證班級(jí)創(chuàng)建的不重復(fù)性,若數(shù)據(jù)庫(kù)中已存在創(chuàng)建的班級(jí)名稱,則返回信息“此班級(jí)已經(jīng)存在!”,反之,通過(guò)Insert 語(yǔ)句把班級(jí)的屬性插入到數(shù)據(jù)庫(kù)中。如下面代碼所示。
若系統(tǒng)的數(shù)據(jù)庫(kù)中已經(jīng)存在新創(chuàng)建的班級(jí)名稱,則用戶需重新返回注冊(cè)頁(yè)面,得到session 值,具體操作流程如下:
if(記錄相同)
2.4 查詢功能的設(shè)計(jì) 用戶通過(guò)輸入關(guān)鍵字的方式搜索記錄,若存在該紀(jì)錄則及時(shí)反饋至瀏覽端,若沒(méi)有則出現(xiàn)“對(duì)不起,無(wú)此記錄!”用戶信息。
具體流程:if(為空)
2.5 刪除功能的設(shè)計(jì) 刪除主要包括刪除班級(jí)成員與刪除整個(gè)班級(jí)兩部分內(nèi)容。在刪除時(shí),管理員要利用SQL語(yǔ)言進(jìn)行數(shù)據(jù)庫(kù)瀏覽,選中需要?jiǎng)h除的記錄,進(jìn)行刪除操作,若沒(méi)有則返回瀏覽頁(yè)面。
3.1 數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì) 在數(shù)據(jù)庫(kù)設(shè)計(jì)環(huán)節(jié),設(shè)計(jì)人員必須明確實(shí)體屬性與實(shí)體的聯(lián)系。一般地,在系統(tǒng)中一個(gè)班級(jí)包括若干班級(jí)成員,而班級(jí)管理員可以是一個(gè)也可以是多個(gè)。但需要注意的是,一個(gè)管理員不能同時(shí)管理多個(gè)班級(jí),而只能屬于一個(gè)班級(jí)。
3.2 系統(tǒng)表結(jié)構(gòu)設(shè)計(jì) 在進(jìn)行系統(tǒng)表設(shè)計(jì)時(shí),設(shè)計(jì)人員一般會(huì)設(shè)計(jì)兩個(gè)數(shù)據(jù)基本表,即表CLASS_TABLE 和表USER_TABLE。其中,表CLASS_TABLE 主要用于存放用戶建班之初的基本信息,而表USER_TABLE 則用于存放管理員的注冊(cè)信息,如表1、表2 所示。
表1 user_tab 表結(jié)構(gòu)
表2 class_tab 表結(jié)構(gòu)
[1][美]Herbert Schildt 著.JAVA2 參考大全[M].張玉清,尚勇,譯.清華大學(xué)出版社,2007.
[2]薩師煊,王珊編著.數(shù)據(jù)庫(kù)系統(tǒng)概論[M].高等教育出版社.
[3]Joseph J.Bambara.Paul R.Allen 著.J2EE 技術(shù)內(nèi)幕[M].劉芳,譯.機(jī)械工業(yè)出版社.