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

正文內(nèi)容

小型倉庫溫濕度監(jiān)測系統(tǒng)_畢業(yè)設(shè)計說明書-資料下載頁

2025-08-22 14:15本頁面

【導(dǎo)讀】成績進行評估對于教育來說其重要性是不言而喻的。但是由于種種原因,要對學(xué)生的成。特別是在高校,學(xué)生成績管理工作量大,處理條件復(fù)雜,人工處。尤其是在網(wǎng)絡(luò)得到廣泛運用的今天,構(gòu)建一個成績評估網(wǎng)絡(luò),可以更加快速有效的。實現(xiàn)這一系統(tǒng)功能,減輕高校的工作負擔(dān)。實現(xiàn),以及在系統(tǒng)實現(xiàn)過程中所遇到的一些技術(shù)問題和其解決方法。

  

【正文】 了威脅 。而 JSP 提供的 JavaBean[6]則很好的解決了這樣問題, 只要使用 Jcreater 編譯后將包文件拷入“ ROOT/WEB— INF/classes”里面就可以供所有的頁面調(diào)用 。 ( Jcreater 是一個很好的 程序開發(fā)平臺,在以后的工作中,作者都是使用 Jcreater 來進行編程的) 167。 4. 2登錄 模塊 設(shè)計 所有的用戶均通過同一登錄界面進行登錄。在登錄時,系統(tǒng)判斷其角色,然后依照try{ (“ ” )。} catch(ClassNotFoundException e){ (())。} try{ conn=(“ jdbc:odbc:school” ,” sa” ,” 111” )。 stmt=()。 rs=(“ select * from teacher” )。 while(()){ ((“ tno” ))。} }catch(SQLException e){ (())。} finally{ ()。 ()。}}% 西南科技大學(xué)畢業(yè)設(shè)計(論文) 25 其角色進入到不同的操作主頁面。 該系統(tǒng)涉及到三個用戶角色 —— 管理員、學(xué)生、教師,每一種用戶所對應(yīng)的功能都不相同。學(xué)生只能對他自己的信息、成績進行操作,而教師可以錄入成績。管理員除了成績管理之外,還對學(xué)生、教師的信息進行管理。因此在設(shè)計登錄時,設(shè)計了三個主頁面。 他們之間的流程如圖 所示 。 圖 系統(tǒng) 登錄 選擇流程 在登錄的時候,作者將用戶表中角色取出來存在一個 session 里,(flag,flag),這里的 flag 是從數(shù)據(jù)庫中取出的 用戶角色,被加到了 session 的 ” flag” 里邊。然后通過一個 response 對象將頁面跳轉(zhuǎn)到 ,并且將角色值傳過去: 然后在 通過這樣一段代碼 ,決定其該進入哪一個主頁面: 返回登錄 未注冊 管理員 學(xué)生 教師 登錄失敗 登錄 界面 身份 驗證 教師主頁面 學(xué)生主頁面 管理員主頁面 注冊 (?flag=+flag+)。 % (GBK)。 String flag=(flag)。 if((student)){ //當(dāng)?shù)卿浻脩魹閷W(xué)生時,進入學(xué)生主頁面 ()。} 西南科技大學(xué)畢業(yè)設(shè)計(論文) 26 以下是這三個角色不同的用例圖,定義了 他們與系統(tǒng) 目標(biāo)之間的交互。 圖 管理員操作用例圖 else if((teacher)){ //當(dāng)?shù)卿浻脩魹榻處煏r,進入教師主頁面 ()。 } else if((manager)){ //當(dāng)?shù)卿浻脩魹楣芾韱T時,進入管理員主頁面 ()。 }% 西南科技大學(xué)畢業(yè)設(shè)計(論文) 27 圖 教師操作用例圖 圖 學(xué)生操作用例圖 167。 4. 3成績管理模塊 在該系統(tǒng)中,最主要的部分就是對成績的管理 。管理員對成績的管理 可以在下面的用例圖 中看到 ,分別為:添加學(xué)生成績、修改學(xué)生成績、查詢學(xué)生成績、學(xué)生成績排名西南科技大學(xué)畢業(yè)設(shè)計(論文) 28 查詢和鎖定狀態(tài)設(shè)定。 圖 167。 4. 3. 1 添加學(xué)生成績 圖 管理員添加學(xué)生成績界面 在這一部分,需要管理員輸入學(xué)號、課程號、成績以及選擇考試號(期中、期末)。該功能實現(xiàn)的程序流程如圖 。 西南科技大學(xué)畢業(yè)設(shè)計(論文) 29 圖 管理員添加學(xué)生成績 代碼流程圖 在添加學(xué)生成績時,因為錄入成績都是實時的,為了減少麻煩,打算將學(xué)期作為默認值,自動生成,這樣既統(tǒng)一了格式,也減少了錄入者的麻煩。但是在實現(xiàn)的時候卻遇到了問題。剛開始,考慮使用 JSP 取系統(tǒng)時間,但是得出的結(jié)果卻并不是系統(tǒng)的時間 ,而是一個不能理解的數(shù)字。后來改用 JavaScript 卻得到了正確的時間。通過查閱資料發(fā)現(xiàn),原來用兩種不同的語言取的是不同的系統(tǒng)時間。采用 JSP 取到的是 Web 服務(wù)器的時間,而 JavaScript 則是取的瀏覽器的時間。 因此要得到準(zhǔn)確的系統(tǒng)當(dāng)前的時間, 應(yīng)該 是選擇 JavaScript。 其代碼如下: Y N 開始 進入添加學(xué)生成績界面 輸入學(xué)號、課程號、成績、 選擇 考試號 提交 輸入信息是否正確? 執(zhí)行插入操作 終止 function myterm(){ var dnow=new Date()。 var dyear=()。 var dmonth=()。 if(dmonth9){strterm=(dyear1)++dyear+2。} else{strterm=dyear++(dyear+1)+1。} =strterm。//給隱藏變量 term 賦值 } 西南科技大學(xué)畢業(yè)設(shè)計(論文) 30 167。 4. 3. 2 修改學(xué)生成績 修改學(xué)生成績是只有管理員才能進行的。而他要修改的成績也必須是數(shù)據(jù)庫當(dāng)中已經(jīng)存在的。在設(shè)計的時候,作者也嚴(yán)格對其進行控制,只有在知道學(xué)號和課程號的同時才能對成績進行修改。 在這一部分首先需要對要修改的學(xué)生成績進行查詢,然后再對查詢結(jié)果進行修改。其代碼流程 如圖 所示。 圖 管理員修改學(xué)生成績代碼流程圖 其成績修改的界面如圖 所示。 圖 管理員修改學(xué)生成績操作界面 Y N 開始 進入修改學(xué)生成績頁面 輸入學(xué)號、課程號 執(zhí)行查詢操作 是否找到查詢信息 ? 執(zhí)行修改操作 提交 終止 西南科技大學(xué)畢業(yè)設(shè)計(論文) 31 從圖 可以看出來,這是一個表格形式的輸出,而在其中加入了兩個文本框,用于存放學(xué)生的成績,并且可以更改。但是 在這里卻出現(xiàn)了一個問題,怎樣才能知道是修改的哪個 學(xué)生的成績呢 ? 如果將學(xué)生的學(xué)號也作為文本框輸出,用戶就可以對其進行修改,但如果設(shè)為不可修改卻又不能實現(xiàn)值的傳遞 。最后讓作者發(fā)現(xiàn)了 hidden 這個表單元素。 hidden 在這之前作者從來都沒有聽說過, 以前用的教材中也 沒有提及。 在一個偶然的機會 作者 從一本參考資料上面看到了 hidden 的使用。它是表單中的一個隱藏域,可以實現(xiàn)表單的傳值,并且不會在界面上顯現(xiàn)出來。 在這里作者利用 hidden 傳遞了學(xué)號和課程號兩個變量。而 hidden 在之后的編程過程中也得到了很廣泛的應(yīng)用。 167。 4. 3. 3 成績查詢模塊 在成績查詢模塊當(dāng)中,管理員 首先要輸入需要查找的關(guān)鍵字的值,選定查詢類型和方式 ,然后點擊查詢按鈕進行查詢。 圖 管理員查詢學(xué)生成績界面 供選擇的查詢類型包括:學(xué)號、學(xué)生姓名、所屬學(xué)院、班級、教工號、教師姓名、課程號、課程名、學(xué)期。 其代碼流程如 圖 所示。 西南科技大學(xué)畢業(yè)設(shè)計(論文) 32 圖 管理員查詢學(xué)生成績代碼流程圖 在輸出學(xué)生的成績之后,將對學(xué)生的成績進行過 濾與統(tǒng)計,以及表格輸出打印,這三項是該系統(tǒng)的重點,也是難點 。 167。 4. 3. 3. 1數(shù)據(jù)過濾 數(shù)據(jù)過濾是對已有的數(shù)據(jù)進行有選擇的輸出,以方便用戶查看。 圖 學(xué)生成績過濾頁面 開 始 進入成績查詢頁面 輸入 查詢 關(guān)鍵字 選擇查詢方式 模糊查 找 精確查找 選擇查詢類型 提交 輸入是否為空 ? 顯示查詢結(jié)果 終止 西南科技大學(xué)畢業(yè)設(shè)計(論文) 33 在這里,用戶可能只選擇其中的一個條件,或者都選 ,也沒指定的不全選時的先后次序 。所以在寫 SQL 語句的時候就要判斷多種情況,給編程帶來了難度。如何能夠把以前的查詢語句保留下來,并且在此基礎(chǔ)上加上過濾條件,過濾條件 的多少如何決定,在提交之后怎樣回到以前的頁面顯示過濾后的結(jié)果,都是要解決的問題。 并且由于成績顯示的頁面有多個頁面都要訪問,但它們所傳的值 的多少 卻是不同的。相應(yīng)成績顯示頁面上所取 的 值也就不相同了 ,如果采用同一取值指令就會造成空指針錯誤 。為了解決這個問題,在每個 需要到該頁面的其他頁面上加了一個 id,取出 id 號就可以判斷他們各自需要取哪些值,做哪些操作。過濾需要做的就是要在原來的 SQL 基礎(chǔ)上加條件。在具體實現(xiàn)時,一個一個進行判斷,主要代碼如下 : if((like)){word1=%+word1+%。} if((like)){word2=%+word2+%。} if((like)){word3=%+word3+%。} if(!()){ //判斷第一個條件是否選擇,如果是,進行以下的操作 sql= and +sql+ +name1+ +tiaojian1+ 39。+word1+39。 if(!()){ //在第一個已選擇的情況下,看第二個是否被選中 sql= +sql+ +h1+ +name2+ +tiaojian2+ +39。+word2+39。 if(!()){//在第一、 二 都已經(jīng)選擇的情況下,看第三個是否被選中 sql= +sql+ +h2+ +name3+ +tiaojian3+ 39。+word3+39。 }} else if(!()){//第一個選中,第二個沒有選中,查看第三個 sql= +sql+ +h2+ +name3+ +tiaojian3+ 39。+word3+39。 }} else if(!()){//第一個未選中,查看第二個條件是否被選中 sql= and +sql+ +name2+ +tiaojian2+ 39。+word2+39。 if(!()){//第二個選中,查看第三個是否選中 sql= +sql+ +h2+ +name3+ +tiaojian3+ 39。+word3+39。}} 西南科技大學(xué)畢業(yè)設(shè)計(論文) 34 167。 4. 3. 3. 2成績統(tǒng)計 成績統(tǒng)計是對所需要統(tǒng)計的成績找出最大值,最小值,計算平均值,統(tǒng)計各個不同的分數(shù)段的數(shù)量,并且對期中和期末的數(shù)據(jù)進行比較,得出之間的差值。并且根據(jù)結(jié)論繪出統(tǒng)計圖。對于學(xué)生與教師來說,他們的成績統(tǒng)計比較容易實現(xiàn)。學(xué)生的只需計算他的所有成績的分布情況,可以針對各個學(xué)期,也可以計算總體 成績分布, 并且生成總體統(tǒng)計圖和學(xué)期統(tǒng)計圖。對于教師,只需對他所需要統(tǒng)計的單門課程進行統(tǒng)計,相對學(xué)生來說更加容易。但是管理員的成績統(tǒng)計就比較麻煩了。因為是建立在成績查詢的基礎(chǔ)上,所顯示的成績的范圍可大可小,它可以只是一個學(xué)生 的成績,可以是一個班的單科成績,可以是一個班的所有成績,也可以是一個學(xué)院的所有專業(yè),所有課程的成績。這就給統(tǒng)計帶來了難度。所以在進行統(tǒng)計之前,首先設(shè)置了一個統(tǒng)計分組選擇界面 (如圖 )。 圖 管理員成績統(tǒng)計選擇分組界面 在這里管理員可以輸入他想統(tǒng)計的最小單位,在進行統(tǒng)計的時候?qū)⒃谠瓉淼?SQL語句后面加上 group by 語句即可。 而實現(xiàn)統(tǒng)計用 SQL的 max, min, avg 就可以實現(xiàn)最大,最小,和平均值的計算。統(tǒng)計各個分數(shù)段的數(shù)量,將每一個值取出來,與各個分數(shù)段進行比對,符合條件,就加一。在跳出 循環(huán)后將它們輸出。 else if(!()){//第一、二均未選種,查看第三個是否選中 sql= and +sql+ +name3+ +tiaojian3+ 39。+word3+39。 } if(!()){//查看排序的選擇情況 sql= +sql+ order by +name4+ +h4+。} 西南科技大學(xué)畢業(yè)設(shè)計(論文) 35 下面圖示是對信息 0201 班學(xué)生的成績就每一門課的成績分布情況進行統(tǒng)計。 圖 成績統(tǒng)計結(jié)果顯示頁面 在做完了統(tǒng)計之后,接下來便是實現(xiàn)統(tǒng)計圖。在 JSP 頁面實現(xiàn)動態(tài)圖表有兩種方法 [7]: 一是插入 Applet 小程序。 二是通過 Java Bean 動態(tài)生成圖象。前者是嵌在網(wǎng)頁中的 Java 小應(yīng)用程序,建立一個包含 Applet 的 JSP 頁面,通過 JSP 頁面中的 Java 腳本( scrilet)從文件或者數(shù)據(jù)庫中讀取所需要的數(shù)據(jù),把這些數(shù)據(jù)存放在相應(yīng)的變量或者數(shù)組中,之后,在 JSP 頁的 Applet 的 參數(shù)行中,用 param name=” sale” value=” %=data%” 把變量值傳給 Applet 進行具體的繪制。但是, Applet 有一個缺點就是,不是每一個瀏覽器都能很好的支持 Applet。 由于 Applet 是下載到客戶端由瀏覽器執(zhí)行的 Java 代碼,在網(wǎng)頁上生成的圖象離不開一虛擬作圖環(huán)境,在必要時需要求經(jīng)常重繪;所以,不能將它象處理一般圖象那樣對它進行存儲和打印,即不能對 Applet圖形進行打印和下載。 方法二是 通過 Java Bean 動態(tài)生成圖象。即通過 Java Bean 或者 servlet 在 servlet端接受 JSP 或 HTML 頁遞交的數(shù)據(jù),然后動態(tài)生成 jpg 或者 gif 等圖象
點擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1