freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于bs模式的實(shí)驗(yàn)室排課系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)畢業(yè)設(shè)計(jì)論文(編輯修改稿)

2025-07-15 15:36 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 相應(yīng)的操作,如進(jìn)入排課系統(tǒng),可以進(jìn)行排課、發(fā)布選課信息、對(duì)學(xué)生的選課信息進(jìn)行確認(rèn)。排課系統(tǒng)編碼與實(shí)現(xiàn)系統(tǒng)運(yùn)行流程圖描繪了物理系統(tǒng)的總體運(yùn)行情況。瀏覽此圖可對(duì)整個(gè)實(shí)驗(yàn)室排課系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的功能有一個(gè)快速、清晰的認(rèn)識(shí)。 目標(biāo)系統(tǒng)體系結(jié)構(gòu) 實(shí)驗(yàn)室排課及教學(xué)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)軟件結(jié)構(gòu)圖實(shí)驗(yàn)室排課子系統(tǒng)教師信息管理課程信息管理信息維護(hù)教室信息管理課程安排排課管理信息維護(hù)信息維護(hù)課程安排排課排課結(jié)果信息錄入信息錄入信息錄入 首先,產(chǎn)生的時(shí)間是在教師和所有上課的班級(jí)共同的空閑時(shí)間集合中產(chǎn)生,并且盡量保證時(shí)間選擇上的均勻性,防止一周幾次課集中于某一段時(shí)間。 其次,對(duì)教師的選擇,一方面考慮到教師的時(shí)間限制(由教師確定一學(xué)期中第幾周,每周哪天哪節(jié)課沒(méi)空),另一方面,對(duì)教師設(shè)置排課級(jí)別,隨著排課時(shí)間的增多,級(jí)別值就增大,從而再次被選擇排課的幾率就減小(此時(shí)要求同一門(mén)課程有多個(gè)教師講授)。 最后,教室也設(shè)置了排課級(jí)別,同教師類似,這樣便可以保證教室資源會(huì)得到合理而均勻有效地利用。 登陸權(quán)限結(jié)構(gòu)圖 基礎(chǔ)數(shù)據(jù)模塊結(jié)構(gòu)圖 查詢?yōu)g覽模塊結(jié)構(gòu)圖 排課的主要思想及代碼排課時(shí),首先初始化實(shí)驗(yàn)室信息鏈表和教師信息鏈表,然后由教師信息鏈表開(kāi)始循環(huán)求解,找到某課程的教師和實(shí)驗(yàn)室信息,循環(huán)判斷教師可用的時(shí)間,將教師可用時(shí)間與實(shí)驗(yàn)室安排做比較,最后再和實(shí)驗(yàn)室可用時(shí)間比較,看教師是否能在這時(shí)間上課,能則把得出的結(jié)果添加進(jìn)入課表。排課的主要代碼如下: public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Validate v = new Validate()。 String zhuanye = (zhuanye)。 String nianji = null。 if ((nianji) != null amp。amp。 !(nianji).equals()) { nianji = ((nianji))。 } AptitudePaikeBean ab = new AptitudePaikeBean()。 ArrayList kecheng = (zhuanye, nianji)。 ArrayList banji = (zhuanye, nianji)。 ArrayList jiaoshi = ()。 ArrayList laoshi = ()。 String[] begin = null。 String[] end = null。 int[] beginInt = new int[3]。 int[] endInt = new int[3]。 int[][] xy = new int[5][6]。 for (int i = 0。 i ()。 i++) { boolean bool = true。 int flag = 0。 int a = 0。// 總共的教學(xué)周 int b = 0。// 每周的課時(shí)數(shù) ArrayList al = (ArrayList) (i)。 begin = (6).toString().split()。 end = (7).toString().split()。 for (int j = 0。 j 。 j++) { beginInt[j] = (begin[j])。 endInt[j] = (end[j])。 } Calendar c = ()。 (beginInt[0], beginInt[1] 1, beginInt[2])。 (, 1)。 while (bool) { (, 1)。 flag++。 if (() + 1 == endInt[1] amp。amp。 () == endInt[2]) { bool = false。 } } if (flag % 5 == 0) { a = flag / 5。 } else { a = flag / 5 + 1。 } if (((3).toString()) % a == 0) { b = ((3).toString()) / a。 } else { b = ((3).toString()) / a + 1。 } for (int n = 0。 n 6。 n++) { for (int w = 0。 w 5。 w++) { if (xy[w][n] == 0) { xy[w][n] = ((0).toString())。 } else { continue。 } b。 if (b == 0) { break。 } } if (b == 0) { break。 } } } ArrayList paike = new ArrayList()。 for (int i = 0。 i ()。 i++) { ArrayList all = new ArrayList()。 ArrayList allRow = new ArrayList()。 ArrayList banjiRow = (ArrayList) (i)。 int flag = 0。 for (int x = 0。 x 5。 x++) { for (int y = 0。 y 6。 y++) { if (xy[x][y + 1] != 0) { flag = xy[x][y]。 xy[x][y] = xy[x][y + 1]。 xy[x][y + 1] = flag。 } else { break。 } } } for (int x = 0。 x 5。 x++) { ArrayList allCol = new ArrayList()。 for (int y = 0。 y 6。 y++) { ( + xy[x][y])。 } (allCol)。 } (allRow)。 (banjiRow)。 (all)。 } (zhuanyeid, zhuanye)。 (nianji, nianji)。 (paike, paike)。 (kecheng, kecheng)。 RequestDispatcher rd = request .getRequestDispatcher(jsp/paike/)。 (request, response)。 } 排課解決辦法在排課算法中,因?yàn)榻處熆梢陨险n時(shí)間由其系統(tǒng)確定,實(shí)驗(yàn)室可以用時(shí)間也于其它系統(tǒng)確定,那么我們只需要將老師和實(shí)驗(yàn)室對(duì)應(yīng)確定下來(lái)就可以了,在排課過(guò)程中,我們?yōu)榱私鉀Q沖突,每當(dāng)確定教師一門(mén)課的上課時(shí)間后,就從數(shù)據(jù)庫(kù)中將實(shí)驗(yàn)和教師的當(dāng)前時(shí)間做出標(biāo)記,再排就是未排的課程。這樣教師的一個(gè)時(shí)間或者實(shí)驗(yàn)室的一個(gè)時(shí)間就只可能出現(xiàn)一講課,即解決了排課沖突。 第4章 數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)的基本概念 概念模型概念模型是在現(xiàn)實(shí)世界中對(duì)客觀事物及其聯(lián)系的一種抽象描述。涉及到下面幾個(gè)術(shù)語(yǔ):(1)實(shí)體:我們把客觀存在并且可以相互區(qū)別的事物稱為實(shí)體。實(shí)體可以是實(shí)際事物,也可以是抽象事件。如一個(gè)職工、一場(chǎng)比賽等。(2)實(shí)體集:同一類實(shí)體的集合稱為實(shí)體集。如全體職工。注意區(qū)分型與值的概念。如每個(gè)職工是職工實(shí)體“型”的一個(gè)具體“值”。屬性:描述實(shí)體的特性稱為屬性。如職工的職工號(hào),姓名,性別,出生日期,職稱等關(guān)鍵字,如果某個(gè)屬性或?qū)傩越M合的值能唯一地標(biāo)識(shí)出實(shí)體集中的每一個(gè)實(shí)體,可以選作關(guān)鍵字。用作標(biāo)識(shí)的關(guān)鍵字,也稱為碼。如“職工號(hào)”就可作為關(guān)鍵字。 E-R模型E-R模型(實(shí)體聯(lián)系模型)簡(jiǎn)稱E-R圖[7]。它是描述概念世界,建立概念模型的實(shí)用工具。E-R圖包括三個(gè)要素:(1)實(shí)體(型)――用矩形框表示,框內(nèi)標(biāo)注實(shí)體名稱。(2)屬性――用橢圓形表示,并用連線與實(shí)體連接起來(lái)。(3)實(shí)體之間的聯(lián)系――用菱形框表示,框內(nèi)標(biāo)注聯(lián)系名稱,并用連線將菱形框分別與有關(guān)實(shí)體相連,并在連線上注明聯(lián)系類型。聯(lián)系歸結(jié)為三種類型:①一對(duì)一聯(lián)系(1:1)設(shè)A、B為兩個(gè)實(shí)體集。若A中的每個(gè)實(shí)體至多和B中的一個(gè)實(shí)體有聯(lián)系,反過(guò)來(lái),B中的每個(gè)實(shí)體至多和A中的一個(gè)實(shí)體有聯(lián)系,稱A對(duì)B或B對(duì)A是1:1聯(lián)系。注意,1:1聯(lián)系不一定都是一一對(duì)應(yīng)的關(guān)系??赡艽嬖谥鵁o(wú)對(duì)應(yīng)。如一個(gè)公司只有一個(gè)總經(jīng)理,一個(gè)總經(jīng)理不能同時(shí)在其它公司再兼任總經(jīng)理,某公司的總經(jīng)理也可能暫缺。②一對(duì)多聯(lián)系(1:n)如果A實(shí)體集中的每個(gè)實(shí)體可以和B中的幾個(gè)實(shí)體有聯(lián)系,而B(niǎo)中的每個(gè)實(shí)體至我和A中的一個(gè)實(shí)體有聯(lián)系,那么A對(duì)B屬于1:n聯(lián)系。如一個(gè)部門(mén)有多名職工,而一名職工只在一個(gè)部門(mén)就職,部門(mén)與職工屬于一對(duì)多的聯(lián)系。③多對(duì)多聯(lián)系(m:n)若實(shí)體集A中的每個(gè)實(shí)體可與和B中的多個(gè)實(shí)體有聯(lián)系,反過(guò)來(lái),B中的每個(gè)實(shí)體也可以與A中的多個(gè)實(shí)體有聯(lián)系,稱A對(duì)B或B對(duì)A是m:n聯(lián)系。如一個(gè)學(xué)生可以選修多門(mén)課程,一門(mén)課程由多個(gè)學(xué)生選修,學(xué)生和課程間存在多對(duì)多的聯(lián)系。必須強(qiáng)調(diào)指出,有時(shí)聯(lián)系也有屬性,這類屬性不屬于任一實(shí)體只能屬于聯(lián)系。數(shù)據(jù)模型由三部分組成,即模型結(jié)構(gòu)、數(shù)據(jù)操作和完整性規(guī)則。這里主要介紹模型結(jié)構(gòu)。DBMS所支持的數(shù)據(jù)模型分為四種:層次模型、網(wǎng)狀模型、關(guān)系模型、面向?qū)ο竽P?。其中第四種數(shù)據(jù)模型目前并未成熟,因此傳統(tǒng)的說(shuō)法有前三種數(shù)據(jù)模型。(1)基本層次聯(lián)系層次模型和網(wǎng)狀模型有共同點(diǎn),可以把它們統(tǒng)稱為格式化模型?;緦哟温?lián)系就是包括兩結(jié)點(diǎn)和一邊的基本單元,兩個(gè)實(shí)體間的有向邊代表的基本層次聯(lián)系表示一對(duì)多的聯(lián)系。通常把表示1的實(shí)體放在上方,稱為父結(jié)點(diǎn),把表示N的實(shí)體放在下面,稱為子結(jié)點(diǎn)。(2)層次數(shù)據(jù)模型用村形結(jié)構(gòu)表示實(shí)體及其之間的聯(lián)系的模型稱為層次模型。該模型的實(shí)際存儲(chǔ)數(shù)據(jù)由鏈接指針來(lái)體現(xiàn)聯(lián)系。特點(diǎn):有且僅有一個(gè)結(jié)點(diǎn)無(wú)父結(jié)點(diǎn),此結(jié)點(diǎn)即為根結(jié)點(diǎn);其它結(jié)點(diǎn)有且僅有一個(gè)父結(jié)點(diǎn)。適合用表示一對(duì)多的聯(lián)系。(3)網(wǎng)狀模型用網(wǎng)狀結(jié)構(gòu)表示實(shí)體及其之間的聯(lián)系的模型稱為網(wǎng)狀模型。允許結(jié)點(diǎn)有多于一個(gè)的父結(jié)點(diǎn),可以有一個(gè)以上的結(jié)點(diǎn)無(wú)父結(jié)點(diǎn)。適合用于表示多對(duì)多的聯(lián)系。層次模型和網(wǎng)狀模型從本質(zhì)上都是一樣的。存在的缺陷:難以實(shí)現(xiàn)系統(tǒng)擴(kuò)充,插入或刪除數(shù)據(jù)時(shí),涉及到大量鏈接指針的調(diào)整。學(xué)生實(shí)驗(yàn)排課系統(tǒng)的設(shè)計(jì)離不開(kāi)數(shù)據(jù)庫(kù)的設(shè)計(jì),而數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)是整個(gè)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)開(kāi)發(fā)過(guò)程的一個(gè)重要環(huán)節(jié),下面是本系統(tǒng)數(shù)據(jù)庫(kù)的ER圖:學(xué)生表課程時(shí)間教師表課程班級(jí)教室學(xué)號(hào)開(kāi)始時(shí)間班級(jí)號(hào)教室號(hào)容納人數(shù)人數(shù)結(jié)束時(shí)間間課程號(hào)課程名姓名教師號(hào)姓名教室名課程號(hào)年級(jí)系別課程名教學(xué)周課時(shí)排課屬于講授安排課程圖41 總的E_R圖對(duì)應(yīng)關(guān)系:學(xué)生與班級(jí): n:1 教師與課程: n:1班級(jí)與課程: n:m班級(jí)與課程時(shí)間:n:m課程與課程時(shí)間:n:m課程時(shí)間與教室:n:m 1)邏輯設(shè)計(jì)是把概念設(shè)計(jì)得到的概念數(shù)據(jù)庫(kù)模式變?yōu)檫壿嫈?shù)據(jù)模式。用到的術(shù)語(yǔ)有:函數(shù)依賴、范式、關(guān)系分解。數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)即是表結(jié)構(gòu)和表關(guān)系的設(shè)計(jì),這里同時(shí)給出表中的樣例數(shù)據(jù)。 表41 教師基本信息表(laoshi)列名數(shù)據(jù)類型長(zhǎng)度主鍵否描述laoshiidint是教師工號(hào)xingmngvarchar20—姓名kechengidint—課程代號(hào)2)實(shí)驗(yàn)課程基本信息表實(shí)驗(yàn)課程基本信息表(kecheng)是用來(lái)記錄學(xué)生實(shí)驗(yàn)的課程的基本信息情況的表,表Course的結(jié)構(gòu)如表42所示:表42實(shí)驗(yàn)課程基本信息表(kecheng)列名數(shù)據(jù)類型長(zhǎng)度主鍵否描述kechengidint是課程編號(hào)kechengmingvarchar50—課程名稱jiaoxuezhouvarchar10—教學(xué)周keshivarchar10—課時(shí)zhuangtaivarchar2—狀態(tài)zhuanyeidint專業(yè)idnianjivarchar50年級(jí)3)實(shí)驗(yàn)室基本信息表實(shí)驗(yàn)室基本信息表(jiaoshi)是用來(lái)記錄學(xué)校實(shí)驗(yàn)室的基本信息情況的表,表Lab的結(jié)構(gòu)如表43所示:表43實(shí)驗(yàn)室基本信息表(jiaoshi)列名數(shù)據(jù)類型長(zhǎng)度主鍵否描述jiaoshiidInt8是實(shí)驗(yàn)室編號(hào)jiaoshivarchar20教室renshuvarcha
點(diǎn)擊復(fù)制文檔內(nèi)容
語(yǔ)文相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1