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

正文內(nèi)容

在線考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)(編輯修改稿)

2024-10-06 18:56 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 查找錯(cuò)誤的,因?yàn)樵嚲磉^(guò)多,從新將試卷分類、統(tǒng)計(jì)是不可行的,而在數(shù)據(jù)庫(kù)中,后臺(tái)管理人員只需要對(duì)數(shù)據(jù)庫(kù)操作就可以找到任意一位學(xué)生的試卷或?qū)W生信息。 在硬件方面,開(kāi)發(fā)本程序?qū)τ布幸欢ㄒ螅捎谏婕暗椒?wù)器與數(shù)據(jù)庫(kù)的應(yīng)用,因此對(duì)電腦的內(nèi)存、 cpu 等有一定要求,不過(guò)目前市場(chǎng)上的電腦一般都能滿足條件。 操作可行性 Java 語(yǔ)言在用戶體驗(yàn)度上的良好性能和安全的架構(gòu),能夠讓考生很輕易的掌握對(duì)該系統(tǒng)的操作。 開(kāi)發(fā)環(huán)境配置 Windows 系統(tǒng)在市場(chǎng)上的占有率毋庸置疑, windows 的良好性能讓越來(lái)越多的企業(yè)選擇作為 PC 平臺(tái),從程序開(kāi)發(fā)的角度來(lái)看,在 windows 系統(tǒng)上對(duì)程序的開(kāi)發(fā)和部署都 9 十分高效;在應(yīng)用階段時(shí)則不考慮應(yīng)用環(huán)境的配置,因?yàn)?java 語(yǔ)言的跨平臺(tái)型十分良好,無(wú)論是 linux、 unix、 mac 還是 windows 系統(tǒng)都可以執(zhí)行, java 語(yǔ)言具有“一次編譯到處執(zhí)行”的優(yōu)點(diǎn)。下面是開(kāi)發(fā)環(huán)境的具體配置: : MyEclipse : Dreamweaver 8 : : Apache :安裝 支持 Java 運(yùn)行。 : JSP, SSH 框架。 MVC 和 B/S 模式。 10 第三章 相關(guān)技術(shù)簡(jiǎn)介 MVC 模式 圖 圖 為 MVC 編程模式結(jié)構(gòu)圖,全名為 Model View Controller,這是一種軟件設(shè)計(jì)典范,這種模式將業(yè)務(wù)邏輯與數(shù)據(jù)顯示分離,傳統(tǒng)的 web 開(kāi)發(fā)中,將地址的處理、頁(yè)面參數(shù)的處理和頁(yè)面的轉(zhuǎn)向集合到一個(gè)類中,在地址處理中用大量的 ifelse 語(yǔ)句然后再 if語(yǔ)句中處理頁(yè)面參數(shù)并完成頁(yè)面轉(zhuǎn)向,這種開(kāi)發(fā)模式適用于小型項(xiàng)目,在大型項(xiàng)目中這種模式不利于項(xiàng)目的維護(hù),而且會(huì)使得程序的結(jié)構(gòu)十分繁重。 隨著編程技術(shù)不斷進(jìn)步,人們急需一種編程思想解決這種問(wèn)題,于是 MVC 模式的誕生解決 了這些問(wèn)題,目前 MVC 編程模式在全世界范圍內(nèi)十分流行, MVC 模式中將數(shù)據(jù)處理、邏輯處理封裝到 Model 里面,將頁(yè)面交給 jsp 完成,而 Controller 的任務(wù)是負(fù)責(zé) Model 中數(shù)據(jù)處理完畢后選擇合適的頁(yè)面。 這種模式完全符合人們希望將程序中不同功能的模塊分開(kāi)的愿望,這樣使得程序前期分析變得十分清晰,所以一旦完成了程序分析階段,再根據(jù) MVC 模式中每個(gè)模塊的任務(wù)編程,就使得程序員的任務(wù)變輕,也不容易出錯(cuò),更重要的是程序的維護(hù)變得方便,在修改程序時(shí)按照程序所需要修改的地方來(lái)改,不會(huì)影響其他部分的功能,程序的結(jié)構(gòu)一 旦清晰,使得程序分析、數(shù)據(jù)關(guān)系建立、程序編寫、代碼維護(hù)甚至在與客戶溝通的時(shí)候也十分容易理解。 Model View Controller 11 MVC 模式的優(yōu)缺點(diǎn) 度降低 將界面 層和業(yè)務(wù)層 分開(kāi)后 , 更改界面層的代碼就不用改變模型和控制器的代碼 , 同理 , 改變一個(gè)程序的業(yè)務(wù)邏輯只需要修改 MVC 中模型層的代碼就可以 。 由于 模型與控制器 還有 視圖 這三個(gè)層次之間是相互分離的 , 因此改變業(yè)務(wù)邏輯變得十分方便 。 模型 中的細(xì)則 是 由自己來(lái)定義的 ,并且 是和 控制器 、 視圖相 分開(kāi) , 因此改變應(yīng)用程序中業(yè)務(wù)邏輯非常容易 。 例如 把數(shù)據(jù)庫(kù)從 MySQL 改變?yōu)?Oracle,只 需要 改變模型 的代碼就行了 。 模型一旦正確的定義出來(lái) , 那么 不管數(shù)據(jù) 是 來(lái)自數(shù)據(jù)庫(kù)或 者是 服務(wù)器,視圖都 將正確的顯示 這些信息 。 由于 MVC 模式中程序的三個(gè)層面 是相互獨(dú)立,改變其中一個(gè)不會(huì)影響其它兩個(gè), 因此 MVC 模式可以構(gòu)建出非常良好的松耦合的部件。 由于網(wǎng)絡(luò)信息的不斷發(fā)展,傳統(tǒng)中 WEB 應(yīng)用只能在 PC 端操作,而現(xiàn) 在我們可以用更多的方式來(lái)訪問(wèn)應(yīng)用程序。 MVC 模式中三個(gè)層次互不影響這個(gè)特點(diǎn)讓程序能夠使用不同樣式的視圖來(lái)訪問(wèn)同一個(gè)服務(wù)器,因?yàn)橐粋€(gè)模型可以被多個(gè)視圖共同利用,它包括任何 WEB 瀏覽器或者無(wú)線瀏覽器,例如,用戶可以在電腦上訂購(gòu)某個(gè)產(chǎn)品也可以在手機(jī)上來(lái)完成訂購(gòu),訂購(gòu)方式雖然不一樣,但是程序中處理訂購(gòu)產(chǎn)品這個(gè)邏輯是一樣的。模型中返回的處理數(shù)據(jù)并沒(méi)有被格式化,所以同樣的數(shù)據(jù)能被不同的界面使用。比如,信息數(shù)據(jù)可以用 html 頁(yè)面來(lái)顯示也可以用 WAP 顯示,而改變數(shù)據(jù)的傳導(dǎo)方向只需要改變視圖選擇的命令就可以,因此模型中的代碼 并沒(méi)有被改變。所以數(shù)據(jù)和業(yè)務(wù)處理邏輯從視圖中分離可以保證模型中代碼的復(fù)用。模型中有狀態(tài)管理和數(shù)據(jù)持久性處理的功能,比如,在電子商務(wù)網(wǎng)站中,購(gòu)物車是基于回話,而其中的電子商務(wù)過(guò)程可以被 Flash網(wǎng)站和無(wú)線聯(lián)網(wǎng)的應(yīng)用程序復(fù)用。 成本低 使用 MVC 模式可以讓模型中處理業(yè)務(wù)過(guò)程的接口的實(shí)現(xiàn)變得簡(jiǎn)單。 在沒(méi)有 MVC 模式之前,程序員需要完成數(shù)據(jù)處理、界面制作、數(shù)據(jù)傳遞等,而現(xiàn)在程序員可以分工 協(xié)作,專注于界面的程序可以將精力集中在表現(xiàn)形式上面,而處理邏輯的程序員只需要專注于業(yè)務(wù),這樣的分工協(xié)作使得程序的開(kāi)發(fā)變得更加效率,開(kāi)發(fā)時(shí)間得到相當(dāng)大的縮減。 由于每個(gè)模塊中的功能單一,因此當(dāng)需要改變某一部分時(shí)只需要找到該模塊進(jìn)行修 12 改即可,對(duì)其他模塊并沒(méi)有影響。 在 MVC 模式中每個(gè)層次的功能十分明顯,而每一層中的應(yīng)用都有相同的特點(diǎn),因此有利于實(shí)現(xiàn)程序的工程化、工具化管理。其中控制器就有一個(gè)好處,它可以用來(lái)連接不通的模型和視圖來(lái)完成用戶所需要的軟件,控制是夠著應(yīng)用程序的一 個(gè)非常重要的部分。如果設(shè)計(jì)好了模型和視圖,控制器就可以根據(jù)用戶的需求進(jìn)行模型和視圖的組合,將數(shù)據(jù)處理結(jié)果通過(guò)所需要的視圖顯示給用戶。 缺點(diǎn) : MVC 并沒(méi)有一個(gè)完整的定義,所以并不容易完全理解 MVC 模式 。 在 使用 MVC 之前是 需要精心的計(jì)劃 的 , 雖然 MVC 模式理解起來(lái)很簡(jiǎn)單,但是 它的內(nèi)部原理 十分 復(fù)雜,因此 需要花費(fèi)一些時(shí)間去思考。同時(shí)由于模型和視圖要嚴(yán)格的分 開(kāi) ,這樣 就 給調(diào)試應(yīng)用程序帶來(lái)了一定的困難 。所以必須在完成某一小部分模塊時(shí)就進(jìn)行測(cè)試,保證每個(gè)模塊的正確性,這樣在進(jìn)行模塊組合時(shí)才能保證程序的正 確性,不然再將代碼組合后再測(cè)試就會(huì)非常麻煩。 、 中等規(guī)模的應(yīng)用程序 MVC 模式的誕生是由于現(xiàn)在項(xiàng)目的規(guī)模越來(lái)越高, MVC 模式只適合大型項(xiàng)目,小、中型的應(yīng)用程序并不適合,用了 MVC 模式后反而會(huì)適得其反。 了 系統(tǒng)的 結(jié)構(gòu) 復(fù)雜性 界面相對(duì)簡(jiǎn)單的程序中 , 如果使用 MVC 模式 , 讓 模型 和 視圖與控制器分離,會(huì) 使得 結(jié)構(gòu)的復(fù)雜性 變高 , 這樣還會(huì)降低程序的運(yùn)行效率。 視圖與控制器 雖然看似 是相互分離 的 , 其實(shí)不然,他們是 聯(lián)系緊密的部件,視圖 如果 沒(méi)有控制器的存在,其應(yīng)用是 非常 有限, 這樣 反而 妨礙了他們的獨(dú)立重用。 在 MVC 模式中視圖與模型中數(shù)據(jù)處理之間要經(jīng)過(guò)很多步驟,因此視圖中要想獲得數(shù)據(jù)需要在程序中進(jìn)行多次接口的調(diào)用,因此如果數(shù)據(jù)并沒(méi)有改變,反而會(huì)使得不必要的頻繁訪問(wèn)數(shù)據(jù)庫(kù),這樣程序的性能會(huì)降低。 很多高級(jí)界面工具并不支持 MVC 模式,所以改變這些工具來(lái)適應(yīng) MVC 模式中建立模塊的相互分離的代價(jià)是很高的,會(huì)造成 MVC 使用的困難。 13 SSH 框架 SSH 框架指的是 strusts、 hibernate、 spring 這 3 大框架,利用 SSH 框架實(shí)現(xiàn)良好的MVC 模式編程和完全的面向?qū)ο缶幊?,既可以最大限度的?shí)現(xiàn)程序的“低耦合”,又可以有效的減少程序員不必干預(yù)的計(jì)算機(jī)底層處理任務(wù),例如數(shù)據(jù)庫(kù)的連接、數(shù)據(jù)的處理,讓程序員集中精力去實(shí)現(xiàn)程序的業(yè)務(wù)邏輯即可,在代碼維護(hù)階段也有較大的優(yōu)勢(shì),不必去更改程序的代碼。 struts 框架 在沒(méi)有 strust 框架之前,程序員編寫的 web 程序都是在一個(gè) servlet 中將參數(shù)處理、邏輯處理、視圖選擇封裝到一個(gè)類中,在編寫小型程序時(shí)確實(shí)是使得程序的封裝性很好,功能性很集中,但是隨著項(xiàng)目的規(guī) 模越來(lái)越大,人們發(fā)現(xiàn)這樣的方式使程序開(kāi)發(fā)十分不便,結(jié)構(gòu)復(fù)雜,不便于維護(hù),也并不遵循程序開(kāi)發(fā)中的功能單一原則,于是應(yīng) MVC 模式的號(hào)召, strust 框架將 web 程序中的請(qǐng)求響應(yīng)的處理、業(yè)務(wù)流程處理、視圖的選擇分開(kāi)。這樣即使遇到大型項(xiàng)目也不會(huì)對(duì)程序開(kāi)發(fā)者造成很大的困擾,也使得程序的靈活度更好。 hibernate 框架 Hibernate 中間件是連接 Java 對(duì)象和關(guān)系型數(shù)據(jù)庫(kù)的橋梁,將 java 對(duì)象映射為各種關(guān)系型數(shù)據(jù)庫(kù)中的二維關(guān)系,或者反之,將關(guān)系數(shù)據(jù)庫(kù)中所存儲(chǔ)的關(guān)系映射為 java 對(duì)象,這便是 Hibernate 的主要職責(zé)。同時(shí), Hibernate 還屏蔽了 Java 對(duì)于各種關(guān)系型數(shù)據(jù)庫(kù)的操作,使得程序員對(duì)數(shù)據(jù)庫(kù)的編程變得更加容易。 Hibernate 是一種中間件工具,在 ORM(對(duì)象與關(guān)系映射)框架中,是接數(shù)據(jù)庫(kù)與實(shí)體類之間的橋梁,在沒(méi)有中間件這個(gè)概念之前,程序員直接與最底層的軟件和硬件打交道,由于越底層的東西越負(fù)責(zé),因此程序員不得不面對(duì)很多問(wèn)題,比如數(shù)據(jù)庫(kù)源的不同、復(fù)雜的網(wǎng)絡(luò)環(huán)境、數(shù)據(jù)庫(kù)的存儲(chǔ)格式、不同的操作系統(tǒng)等,這些問(wèn)題與程序沒(méi)有直接關(guān)系,在軟件思想中不符合程序員將大量精力集中到業(yè)務(wù)邏輯的開(kāi)發(fā)的規(guī)則,因此 中間件在應(yīng)用軟件與硬件和操作系統(tǒng)之間解決了這個(gè)問(wèn)題。 spring 框架 Spring 框架式一個(gè)輕量級(jí)的控制反轉(zhuǎn)( IOC)技術(shù)和面向切面編程( AOP)技術(shù)的容器框架,利用 Spring 框架中的 IOC 技術(shù)可以實(shí)現(xiàn) J2EE 平臺(tái)中所倡導(dǎo)的由容器實(shí)現(xiàn)對(duì)象的生命周期管理,而利用 Spring 框架中的 AOP 技術(shù)可以實(shí)現(xiàn) J2EE 平臺(tái)中所倡導(dǎo)的分離應(yīng)用系統(tǒng)中業(yè)務(wù)邏輯組件和通用的技術(shù)服務(wù)組件。應(yīng)用系統(tǒng)的開(kāi)發(fā)者在應(yīng)用系統(tǒng)中應(yīng)用 Spring 框架后能夠達(dá)到“解耦”和“脫離容器”的設(shè)計(jì)和實(shí)現(xiàn)的目的。 14 圖 為傳統(tǒng) MVC 模式: 圖 不難得出缺點(diǎn)如下: 對(duì)于連接邏輯處理和視圖選擇的控制器,通過(guò)代碼來(lái)完成十分繁瑣; 如果客戶希望邏輯的實(shí)現(xiàn)方式改變或者在程序維護(hù)和升級(jí)時(shí)需要改變實(shí)現(xiàn)方 式,那么需要改動(dòng)原代碼; 數(shù)據(jù)庫(kù)的連接、關(guān)閉需要程序員手動(dòng)完成,那么數(shù)據(jù)庫(kù)一旦改變,又不得不改動(dòng)原代碼,而且在數(shù)據(jù)庫(kù)存儲(chǔ)時(shí)的代碼量大。 圖 為 SSH 框架整合的 MVC 模式: 圖 15 利用 SSH 框架后,可以解 決上述 3 個(gè)缺點(diǎn),視圖與邏輯處理的連接用 strusts 框架完成,因此改變連接方向不必改動(dòng)原代碼,只需要在 strusts 框架的配置文件中更改;對(duì)象的調(diào)用方式發(fā)生改變時(shí),只需要在 spring 的配置文件中更改; 數(shù)據(jù)庫(kù)連接、關(guān)閉、數(shù)據(jù)保存等交給計(jì)算機(jī)來(lái)完成,即使數(shù)據(jù)庫(kù)改變了,也只需要去 hibernate 配置文件中更改即可。 小結(jié) ,人們不斷的發(fā)現(xiàn)缺點(diǎn),不斷的提出新的思想,最終認(rèn)為一個(gè)優(yōu)秀的軟件系統(tǒng)要有以下幾個(gè)特點(diǎn): ,系統(tǒng)具有控制、業(yè)務(wù)處理、數(shù)據(jù)存儲(chǔ) 3 個(gè)大的構(gòu)架 ,在業(yè)務(wù)邏輯中將功能單一化,能夠提高代碼的重用率。 3/在程序更新和維護(hù)時(shí)盡量不要去更改原代碼,因?yàn)樵a的改動(dòng)就需要進(jìn)行大量的分布測(cè)試,框架技術(shù)將每個(gè)模塊建立連接后交給計(jì)算機(jī)來(lái)完成,可以避免出錯(cuò)。 ,程序員的主要任務(wù)是完成具有應(yīng)用價(jià)值的業(yè)務(wù)邏輯。 16 第四章 數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)的設(shè)計(jì)關(guān)系到業(yè)務(wù)邏輯的編寫,因此在進(jìn)行數(shù)據(jù)庫(kù)分析時(shí)應(yīng)根據(jù)規(guī)范要求來(lái)嚴(yán)格完成數(shù)據(jù)庫(kù)的創(chuàng)建,必須要減少不必要的數(shù)據(jù),建立數(shù)據(jù)之間良好的關(guān)系結(jié)構(gòu),大致有以下要求: 構(gòu)要層次分明,每個(gè)表的包含的信息能夠體現(xiàn)出某一功能; ,在進(jìn)行程序大致分析時(shí),對(duì)數(shù)據(jù)訪問(wèn)量進(jìn)行評(píng)估,訪問(wèn)量的評(píng)估則關(guān)心到數(shù)據(jù)庫(kù)的性能、消耗,根據(jù)業(yè)務(wù)邏輯添加”鎖“機(jī)制,保證事務(wù)的完整性。 ,數(shù)據(jù)庫(kù)在系統(tǒng)中起到”系統(tǒng)源“的地位,因此一個(gè)優(yōu)秀的系統(tǒng)必須要能”保護(hù)數(shù)據(jù)庫(kù)“。 ,易于維護(hù)。 數(shù)據(jù)庫(kù)需求分析 根據(jù)業(yè)務(wù)邏輯中所產(chǎn)生的數(shù)據(jù)存儲(chǔ),確定數(shù)據(jù)庫(kù)的設(shè)計(jì),數(shù)據(jù)庫(kù)需求分析的目的就是為了確定系統(tǒng)中的數(shù)據(jù)存儲(chǔ)和關(guān)系。 根據(jù)分析,可以確定該系 統(tǒng)的集中信息存儲(chǔ),即:學(xué)生信息、老師信息、專業(yè)信息、院系信息、試卷分?jǐn)?shù)、科目信息。 數(shù)據(jù)庫(kù)設(shè)計(jì)概要 概要設(shè)計(jì)是將需求分析所獲得的存儲(chǔ)信息轉(zhuǎn)換為抽象的關(guān)系模式,在概要設(shè)計(jì)中可以大體得出該數(shù)據(jù)表的具體功能和負(fù)責(zé)存儲(chǔ)的信息。 圖 為學(xué)生的 ER 圖: 圖 學(xué)生
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1