【正文】
he MVC architecture . You want the appropriate tool for the job, and servlets, by themselves, do not plete your toolkit. SOURCE OF。ColdFusion多年前就已經(jīng)這樣做了。為了解決Java Servlet的這種缺點(diǎn),SUN推出了JSP。 JSP的由來Sun公司的JSP技術(shù),使Web頁面開發(fā)人員可以使用HTML或者XML標(biāo)識(shí)來設(shè)計(jì)和格式化最終頁面。Java程序員可以致力于動(dòng)態(tài)代碼。然而,這種底層的等同性并不意味著servlet和JSP頁面對于所有的情況都等同適用。按照Sun的說法,JSP能夠適應(yīng)市場上包括Apache WebServer、%的服務(wù)器產(chǎn)品。在jsp頁面的菜單怎么處理上我猶豫了很久,最終確定使用iframe標(biāo)簽,而且還實(shí)現(xiàn)了自動(dòng)收縮到左邊框。以后的網(wǎng)上考試系統(tǒng)將會(huì)更加完善使用。再用Admin2賬號(hào)和密碼進(jìn)入了教師主頁,刪除了Admin教師信息,查看題庫和試卷,發(fā)現(xiàn)Admin添加的題庫和試卷信息都已經(jīng)被刪除了。,這些規(guī)則可以看作是測試的目標(biāo)或定義:;;。 url = ().getInitParameter(basepath) + TestPaperAdd。 url = ().getInitParameter(basepath) + TestPaperAdd。 url = ().getInitParameter(basepath) + TestPaperAdd。//設(shè)置試卷信息 (cal)。 int maxscore = Integer .parseInt((maxscore).trim())。 在線制作試卷頁面1 在線制作試卷頁面1 在線制作試卷頁面1試卷擁有試卷編號(hào)、試卷名稱、總分、科目、啟用時(shí)間、終止時(shí)間、命卷時(shí)間、命卷教師賬號(hào)屬性。填空題管理:進(jìn)入可以添加、刪除、修改各個(gè)科目的填空題。 } else { message = 提交失敗。 (())。 noinpaper = ()。 (noinpaper)。 noinpaper = ()。 MytestChoice mychoice = new MytestChoice()。 (score)。 String message = 。 } } Testpaper testpaper = new Testpaper()。//獲取試卷的選擇題列表 ListPaperChoice list = new ArrayListPaperChoice()。 考試頁面考試功能實(shí)現(xiàn)為,學(xué)生在試卷列表頁面中點(diǎn)擊進(jìn)行考試,系統(tǒng)將根據(jù)點(diǎn)擊的鏈接提供的信息來確定學(xué)生請求的哪份試卷,并用Session存儲(chǔ)試卷的id,隨后在數(shù)據(jù)庫中提取改試卷的題目信息并發(fā)送到j(luò)sp頁面進(jìn)行顯示以讓學(xué)生進(jìn)行考試。 () .forward(request, response)。 } }//重定向到Index (Index).forward(request, response)。 DAO dao = new DaoTeacher()。 if (null != student amp。//獲取參數(shù) String password = (password)。 (連接數(shù)據(jù)庫成功)。各模塊雖然是獨(dú)立的,但又統(tǒng)一于同一數(shù)據(jù)庫中,便于管理員管理維護(hù)數(shù)據(jù)庫,同時(shí)也便于教師和學(xué)生的操作。所以當(dāng)單擊Web頁面中的超鏈接和發(fā)送HTML表單時(shí),控制器本身不輸出任何東西和做任何處理。如何處理應(yīng)用程序的界面變得越來越有挑戰(zhàn)性。教師功能模塊 教師功能模塊圖設(shè)置個(gè)人信息:修改個(gè)人基本信息學(xué)生信息管理模塊功能:教師負(fù)責(zé)對數(shù)據(jù)庫信息的維護(hù)(包括增加,刪除,修改),實(shí)現(xiàn)對學(xué)生基本信息的增刪改。域完整性約束要求屬性值必須在域中。詳細(xì)設(shè)計(jì)過程如下介紹??蓪⒁唤M數(shù)據(jù)復(fù)制到多個(gè)移動(dòng)的脫接用戶,使這些用戶自主地工作,然后將他們所做的修改合并回發(fā)布服務(wù)器。reg?!猄QLServer 2000SQL Server 2000是Microsoft 公司推出的SQL Server 數(shù)據(jù)庫管理系統(tǒng)的一個(gè)版本。JSP技術(shù)是用Java語言作為腳本語言的?!狫SP(Java Server Page)JSP[3]頁面由HTML代碼和嵌入其中的Java代碼所組成。 考生管理功能:可注冊新增學(xué)生用戶,同時(shí)查看考生及班級(jí)考生的信息。考試的部分客觀題在考生考完之后系統(tǒng)就能自動(dòng)評(píng)分,并保存考生的主觀題答案。其靈活性、安全性和易用性為數(shù)據(jù)庫編程提供了良好的條件??尚行匝芯康哪康木褪怯米钚〉拇鷥r(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。對于大規(guī)模的考試,尤其是到了考試密集期(如期末,期中)。為解決題庫系統(tǒng)中存在的這些問題, 作者經(jīng)過研究幾種不同的網(wǎng)上系統(tǒng),經(jīng)充分的考慮,最后給出了一個(gè)較為理想的題庫系統(tǒng)解決方案,并結(jié)合當(dāng)前比較使用的B/S結(jié)構(gòu)開發(fā)一個(gè)功能完備的網(wǎng)上考試系統(tǒng)?;贘SP的網(wǎng)上在線考試系統(tǒng)的畢業(yè)設(shè)計(jì)系統(tǒng)開發(fā)背景及意義隨著計(jì)算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)迅速發(fā)展和高校校園網(wǎng)功能的日益完善,很多高校建立了基于校園網(wǎng)的網(wǎng)絡(luò)信息管理平臺(tái),為提高教學(xué)管理水平提供了先進(jìn)的管理手段。近年來,部分學(xué)校陸續(xù)開發(fā)了一些基于微機(jī)的題庫系統(tǒng),并作為成果向其它學(xué)校推廣,但這些題庫一般都是結(jié)合本校具體情況,針對單一課程的小型題庫,甚至某些學(xué)校購得的題庫系統(tǒng)中的題目本身是不可維護(hù)的,即使題目已不適合自己的學(xué)生考試使用,也無法更新題庫中的題目??紙龅陌才牛罕O(jiān)考人員的培訓(xùn)與管理??尚行苑治鲆卜Q為可行性研究,即是在系統(tǒng)調(diào)查的基礎(chǔ)上,針對新系統(tǒng)的開發(fā)是否具備必要性和可能性,對新系統(tǒng)的開發(fā)從技術(shù)、經(jīng)濟(jì)、管理的方面進(jìn)行分析和研究,以避免投資失誤,保證新系統(tǒng)的開發(fā)成功。軟件方面,網(wǎng)絡(luò)化考試需要的各種軟件環(huán)境都已具備,數(shù)據(jù)庫服務(wù)器方面則有SQLServer,均能夠處理大量數(shù)據(jù),同時(shí)保持?jǐn)?shù)據(jù)的完整性并提供許多高級(jí)管理功能[2]。穩(wěn)定性可以保證每一次考試對每一個(gè)考生是公平的,隨機(jī)性可以避免作弊的發(fā)生。 在線制作試卷:教師、管理員可在線制作試卷,可設(shè)定試題的類型、分值,但教師制作試卷后必須要由管理員審核才能考試。本系統(tǒng)是基于JSP+SQLServer 2000數(shù)據(jù)庫技術(shù)實(shí)現(xiàn)的,現(xiàn)對JSP技術(shù)和SQL Server 2000數(shù)據(jù)庫作簡要的介紹。相比ASP/PHP的局限性是顯而易見的。Java已經(jīng)有了許多非常優(yōu)秀的開發(fā)工具,而且許多可以免費(fèi)得到,并且其中許多已經(jīng)可以順利的運(yùn)行于多種平臺(tái)之下。同一個(gè)數(shù)據(jù)庫引擎可以在不同的平臺(tái)上使用,從運(yùn)行 Microsoft Windowsamp。復(fù)制同樣使您得以維護(hù)多個(gè)數(shù)據(jù)復(fù)本,同時(shí)確保單獨(dú)的數(shù)據(jù)復(fù)本保持同步。2. 網(wǎng)上考試系統(tǒng)設(shè)計(jì)在對網(wǎng)上考試系統(tǒng)數(shù)據(jù)庫部分進(jìn)行設(shè)計(jì)的過程中,通過對系統(tǒng)功能進(jìn)行需求分析得到系統(tǒng)的基本信息表,繪制系統(tǒng)業(yè)務(wù)流程圖和系統(tǒng)數(shù)據(jù)流程圖,分析得到數(shù)據(jù)字典;在概率結(jié)構(gòu)設(shè)計(jì)階段通過對需求階段得到的用戶需求抽象得到數(shù)據(jù)庫關(guān)系模型的ER圖[10];在邏輯結(jié)構(gòu)設(shè)計(jì)階段得到數(shù)據(jù)庫的關(guān)系模式并繪制信息表。根據(jù)實(shí)際需要,采取一定的手段來滿足用戶的完整性需求。網(wǎng)上考試系統(tǒng)是一個(gè)典型的數(shù)據(jù)庫開發(fā)應(yīng)用程序,本系統(tǒng)主要用管理員、教師和學(xué)生二大模塊組成,各模塊功能如下:用戶功能模塊 學(xué)生功能模塊圖學(xué)生注冊:可以注冊學(xué)生權(quán)限的賬號(hào)修改個(gè)人信息:學(xué)生登錄后修改個(gè)人基本信息考試模塊功能:學(xué)生登陸后選擇試卷并進(jìn)行考試成查看成績功能:學(xué)生登陸后可以查詢自己的成績信息,已經(jīng)查看標(biāo)準(zhǔn)答案?! ∫晥D是用戶看到并與之交互的界面??刂破鹘邮苡脩舻妮斎氩⒄{(diào)用模型和視圖去完成用戶的需求。3. 網(wǎng)上考試系統(tǒng)實(shí)現(xiàn)從系統(tǒng)功能模塊劃分中可以看出,系統(tǒng)總體上有兩個(gè)功能模塊組成。點(diǎn)擊添加,選擇SQLServer,建立一個(gè)連接本系統(tǒng)數(shù)據(jù)庫的數(shù)據(jù)源(名稱為:cwx_200710137317),代碼是: try { con = (jdbc:odbc:cwx_200710137317)。方法存儲(chǔ)用戶的登錄信息;判斷用戶是否輸入正確用戶名和密碼的Java程序片段如下所示:protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username = (username)。//獲取接口對象//通過接口查出student對象 student = (Student) (student)。//新建teacher對象 (username)。 (loginsuccess)。 } else { (login fail)。進(jìn)入在線考試之后會(huì)進(jìn)行選擇科目進(jìn)入試題選擇頁面,點(diǎn)擊參加考試就可以進(jìn)行考試了。 ListModel list1 = ( testno= + testno + order by noinpaper asc)。 (((PaperCom) model).getAdddate().toString())。//重定向到考試頁面 }交卷代碼如下:protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Autogenerated method stub (utf8)。//新建存儲(chǔ)學(xué)生考試信息的對象 int score = 0。 String answer = 。 if (null != model) { try { choice = (PaperChoice) model。 (myanswer)。 if (null != model) { try { = (PaperCom) model。 (noinpaper)。//將得分寫入考試信息中 message = 成功交卷,選擇題得了 + score + 分,填空題請自行打分。選擇題管理:進(jìn)入可以添加、刪除、修改各個(gè)科目的選擇題。、。 String teo = ().trim()。 Calendar cal = ()。 } catch (ParseException e) { message = 添加失敗。 } catch (ParseException e) { message = 添加失敗。 } else { message = 添加失敗。一般分為兩個(gè)階段::在編完一模塊后進(jìn)行測試;:在開發(fā)完軟件后進(jìn)行綜合測試。在登陸頁面成功跳轉(zhuǎn)到學(xué)生注冊頁面并成功注冊了一個(gè)student賬號(hào),用這個(gè)賬號(hào)登陸進(jìn)入了學(xué)生主頁,并進(jìn)行了考試、查看考試結(jié)果和標(biāo)準(zhǔn)答案,最后成功修改了自己的密碼等信息。在當(dāng)今信息時(shí)代,計(jì)算機(jī)技術(shù)與網(wǎng)絡(luò)技術(shù)越來越廣地成熟的應(yīng)用于各個(gè)領(lǐng)域,同時(shí)也影響了教育領(lǐng)域的重大變革,網(wǎng)上考試系統(tǒng)也將更多更好的應(yīng)用在教育教學(xué)領(lǐng)域中。之后就是dao接口的設(shè)計(jì)了,在這個(gè)過程中碰到的問題比較多,首先是有很多關(guān)于Select的接口,它們需要返回一個(gè)Model對象或者一個(gè)Model類型的List,那么就有很多重復(fù)地初始化Model和設(shè)定屬性值的代碼,這很不簡潔,終于我創(chuàng)建了一個(gè)Model的工廠類,它可以根據(jù)查詢結(jié)果集返回一個(gè)Model類型的List,這樣就方便多了。JSP為創(chuàng)建高度動(dòng)態(tài)的Web應(yīng)用提供了一個(gè)獨(dú)特的開發(fā)環(huán)境。因而,從根本上,JSP頁面能夠執(zhí)行的任何任務(wù)都可以用servlet來完成??梢詫﹂_發(fā)團(tuán)隊(duì)進(jìn)行劃分。我們總是希望用適當(dāng)?shù)墓ぞ咄瓿上鄬?yīng)的工作,僅僅是servlet并不一定能夠勝任所有工作。但Java Servlet也不是沒有缺點(diǎn),和傳統(tǒng)的CGI、ISAPI、NSAPI方式相同,Java Servlet是利用輸出HTML語句來實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁的,如果用Java Servlet來開發(fā)整個(gè)網(wǎng)站,動(dòng)態(tài)部分和靜態(tài)頁面的整合過程會(huì)非常難以實(shí)現(xiàn)。Java團(tuán)隊(duì)并沒有發(fā)明這一思想將頁面設(shè)計(jì)成由靜態(tài)HTML和用特殊標(biāo)簽標(biāo)記的動(dòng)態(tài)代碼混合組成.。JSPThe Java Server Pages( JSP) is a kind of according to web of the script plait distance technique, similar carries the script language of Java in the server of the Netscape pany of server side JavaScript( SSJS) and the Active Server Pages(ASP) of the Microsoft. JSP pares the SSJS and ASP to have better can expand sex, and it is no more exclusive than any factory or some one particular server of Web. Though the norm of JSP is to be draw up by the Sun pany of, any factory can