【正文】
d /action action path=/delQuestion type = parameter=delQuestion forward name=del path=//forward /action action path=/saveQuestion type = parameter=addQuestion forward name=save path=//forward /action action path=/seekScore type = parameter=seekScore forward name=list path=//forward /action /actionmappings messageresources parameter=ApplicationResources //strutsconfig: 訪問(wèn)數(shù)據(jù)庫(kù)的工具主要是訪問(wèn)數(shù)據(jù)庫(kù)的工具類(lèi):本系統(tǒng)采用的是封裝了jdbc的hibernate來(lái)進(jìn)行和數(shù)據(jù)庫(kù)進(jìn)行操作。在M上我們采用Hibernate框架技術(shù),以下是一個(gè)非常簡(jiǎn)要的Hibernate體系結(jié)構(gòu)的概要圖: 從這個(gè)圖可以看出,Hibernate使用數(shù)據(jù)庫(kù)和配置信息來(lái)為應(yīng)用程序提供持久化服務(wù)(以及持久的對(duì)象)。ODBC為直接訪問(wèn)數(shù)據(jù)定義了一組函數(shù),而不是在客戶(hù)應(yīng)用程序中嵌入SQL。 } return (del)。 } public ActionForward delStudent(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { int id = ((sid))。 對(duì)考生信息的維護(hù) 顯示所有考生,和刪除考生的界面,源碼。 boolean b。 return (list)。 管理里員后臺(tái)登錄 操作的主要界面和代碼。 } (scoreinfo, score)。 try { score = ((), term).getScore()。 HttpSession hs = (false)。 return (Examreport) (, id)。 return count。 //使用內(nèi)連接來(lái)從數(shù)據(jù)庫(kù)中取得相應(yīng)的題目和答案。 temp = ((n))。 } return ()。 (^^^^^)。 (ep)。 }//提交學(xué)生的成績(jī)將其保存到數(shù)據(jù)庫(kù)中 public Integer submit(Student s, ListExamPaper eps) { Session session = ()。 public ListExamPaper selectStudentExamPaper(int erid) { Session session = ()。 } //通過(guò)題庫(kù)的中的id來(lái)選擇題目。//隨機(jī)的 q = selectQuestion(temp)。 if (count num)//判斷題目數(shù)是否小于試卷中的題目數(shù) num = count。 String hql1 = select count(*) from table_question。//創(chuàng)建題庫(kù)的實(shí)例對(duì)象 String hql = select max(id) from table_question。//題目的序列號(hào) int count = 0。//生成試卷的列表方法 public ListQuestion generatorPaper(int num) { Session session = ()。 } } catch (Exception e) { ()。 (SNO + ())。if (().equals(passwd)) {HttpSession session = (true)。//得到頁(yè)password StudentService service = new StudentServiceImp()。 public ActionForward login(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String target = f。 系統(tǒng)模塊部分設(shè)計(jì) 用戶(hù)登錄 對(duì)于已注冊(cè)的用戶(hù)根據(jù)用戶(hù)名和密碼進(jìn)行登陸,登錄界面如下:填寫(xiě)您的學(xué)號(hào)、密碼。 題庫(kù)表:create table table_question( id int (10) not null auto_increment,問(wèn)題主鍵 context varchar(150),內(nèi)容 answer1 varchar(150),答案 answer2 varchar(150), answer3 varchar(150), answer4 varchar(150), answer varchar(150),標(biāo)準(zhǔn)答案 primary key(id)主鍵定義 )。、代碼分層思想由于采用B/S設(shè)計(jì)模式分層思想,同時(shí)根據(jù)軟件工程的管理思想及系統(tǒng)分析的設(shè)計(jì)與分析的思想進(jìn)行系統(tǒng)的開(kāi)發(fā),利用Java語(yǔ)言開(kāi)發(fā)Web應(yīng)用程序,提供String+Hibernate+Spring框架對(duì)系統(tǒng)的程序代碼結(jié)構(gòu)進(jìn)行分層。精確的說(shuō),有些程序是圍繞著什么正在發(fā)生而編寫(xiě),有些則是圍繞誰(shuí)正在受影響而編寫(xiě)的。它是一次性到位的開(kāi)發(fā),能實(shí)現(xiàn)不同的人員,從不同的地點(diǎn),以不同的接入方式(比如LAN, WAN, Internet/Intranet等)訪問(wèn)和操作共同的數(shù)據(jù)庫(kù);它能有效地保護(hù)數(shù)據(jù)平臺(tái)和管理訪問(wèn)權(quán)限,服務(wù)器數(shù)據(jù)庫(kù)也很安全 。這種應(yīng)用程序的設(shè)計(jì)使用客戶(hù)/服務(wù)器模式,各層可以同時(shí)開(kāi)發(fā),并且可以由不同的成員組用不同的語(yǔ)言來(lái)開(kāi)發(fā)。在一個(gè)典型的三層架構(gòu)應(yīng)用程序中,應(yīng)用程序的用戶(hù)工作站包括提供圖形用戶(hù)界面(GUI)的程序設(shè)計(jì)和具體的應(yīng)用程序入口表格或交互式窗口。它是隨著Internet技術(shù)的興起,對(duì)C/S結(jié)構(gòu)的一種變化或者改進(jìn)的結(jié)構(gòu)。例如,使用Hibernate的查詢(xún),可以直接返回包含某個(gè)值對(duì)象的列表(List),而不必向傳統(tǒng)的JDBC訪問(wèn)方式一樣把結(jié)果集的數(shù)據(jù)逐個(gè)裝載到一個(gè)值對(duì)象中,為我們的編碼工作節(jié)省了大量的勞動(dòng)。Hibernate通過(guò)持久層的框架將數(shù)據(jù)庫(kù)存儲(chǔ)從服務(wù)層中分離出來(lái)它是O/R Mapping的一種實(shí)現(xiàn)是目前在JAVA界使用非常廣泛的O/R Mapping的一種實(shí)現(xiàn),可以實(shí)現(xiàn)關(guān)系型數(shù)據(jù)庫(kù)和對(duì)象之間的映射。最初,JavaBean的目的是為了將可以重復(fù)使用的軟件代碼打包標(biāo)準(zhǔn)。它使用服務(wù)層框架可以將JavaBeans從Jsp/Servlet中分離出來(lái),而使用表現(xiàn)層框架則可以將Jsp中剩余的JavaBeans完全分離,這部分JavaBeans主要負(fù)責(zé)顯示相關(guān)信息,一般是通過(guò)標(biāo)簽庫(kù)(Taglib)實(shí)現(xiàn),不同框架有不同自己的標(biāo)簽庫(kù),Struts是應(yīng)用比較廣泛的一種表現(xiàn)層框架。所有的配置工作都集中在服務(wù)器端且所有客戶(hù)端請(qǐng)求都是通過(guò)DBMS來(lái)訪問(wèn)數(shù)據(jù)庫(kù),從而大大減少了數(shù)據(jù)直接暴露的風(fēng)險(xiǎn)。在整個(gè)系統(tǒng)中,業(yè)務(wù)邏輯和用戶(hù)界面都集中到了客戶(hù)端,必然會(huì)增加安全隱患。Tomcat是一個(gè)很好的工具,不僅僅因?yàn)槠涿赓M(fèi),功能強(qiáng)大,更因?yàn)槠溟_(kāi)放性,越來(lái)越受到人們的重視。編譯以后,訪問(wèn)將會(huì)很快。它在傳統(tǒng)的靜態(tài)頁(yè)面文件(*.html,*.htm)中加入JAVA程序片段和JSP標(biāo)記,就構(gòu)成了JSP頁(yè)面。 方案的選擇開(kāi)發(fā)在線考試系統(tǒng),提出以下解決方案:選擇MySQL作為后臺(tái)的數(shù)據(jù)庫(kù),選擇Java、Jsp、JavaScript、Html,Servlet,Struts,作為應(yīng)用程序開(kāi)發(fā)工具,運(yùn)用Tomcat服務(wù)器技術(shù),整個(gè)系統(tǒng)完全基于B/S (Browser/Server),采用最流行的MVC 模式開(kāi)發(fā)??荚嚨牟糠纸Y(jié)果在考生考完之后就可以知道,同時(shí)提供一個(gè)機(jī)會(huì)讓考生知道自己哪里做錯(cuò)了,并給出反饋信息說(shuō)明理由??荚嚁?shù)據(jù)的存放和處理必須對(duì)考試保密,需要一定的安全性保障。在當(dāng)今信息時(shí)代,計(jì)算機(jī)技術(shù)與網(wǎng)絡(luò)技術(shù)越來(lái)越廣地應(yīng)用于各個(gè)領(lǐng)域,改變著人們的學(xué)習(xí)、工作、生活乃至思維方式,也引起了教育領(lǐng)域的重大變革。開(kāi)發(fā)方案 問(wèn)題分析傳統(tǒng)的學(xué)校教學(xué)中,進(jìn)行一場(chǎng)考試,要求老師刻試卷、印試卷、安排考試、監(jiān)考、收集試卷、評(píng)改試卷、講評(píng)試卷和分析試卷,這是一個(gè)繁雜的過(guò)程,需要大量人力、物力與時(shí)間的投入,已經(jīng)越來(lái)越不適應(yīng)學(xué)校信息化建設(shè)與現(xiàn)代教學(xué)的需要。隨著計(jì)算機(jī)應(yīng)用的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用不斷擴(kuò)大,如遠(yuǎn)程教育和虛擬大學(xué)的出現(xiàn)等等,且這些應(yīng)用正逐步深入到千家萬(wàn)戶(hù)?!霸诰€考試系統(tǒng)”是集合現(xiàn)代考試?yán)碚摗⒎椒ê同F(xiàn)代信息技術(shù)手段的智能化網(wǎng)上考試系統(tǒng),為學(xué)生個(gè)性化學(xué)習(xí)提供“靈活、方便、科學(xué)、公平”的“個(gè)別化考試服務(wù)”,是終結(jié)性評(píng)價(jià)系統(tǒng)。我們要給不同的考試一個(gè)好的解決方案。我們國(guó)家的自考或是成考,以及各省市的各種考試,現(xiàn)在都在朝著信息化的道路前進(jìn)在走。The system design introduced the design, system mold of the instruction thought, database of system design the design of the piece?!娟P(guān)鍵詞】:JSP, Servlet, Struts, JAVA,MySQL數(shù)據(jù)庫(kù),B/S模式Online examination system base on JAVAStudent : CHAO SUN supervisor: WEI MING XIAO【ABSTRACT】Online examination system the aim is carry out examination of have no the paper turn a management, can carry on through Internet net or bureau area net to some examinations of categories, convenient school square test the management of duty, also convenient the examinee is particularly suitable for examinee to distribute widely and not easily concentrated of long range mainly develop the systemJAVAEE of the backstage management39。本論文主要介紹了對(duì)JAVAEE在線考試系統(tǒng)的分析、設(shè)計(jì)和開(kāi)發(fā)的全部過(guò)程。我主要開(kāi)發(fā)系統(tǒng)的后臺(tái)管理系統(tǒng)—JAVA在線考試管理子系統(tǒng),它包括試題管理、考生管理、試卷管理、試卷自動(dòng)審批等功能。開(kāi)發(fā)方案中主要介紹開(kāi)發(fā)在線考試系統(tǒng)得目的、開(kāi)發(fā)方案的選擇及開(kāi)發(fā)框架的技術(shù)的確定;需求分析介紹了在線考試系統(tǒng)的總體需求及系統(tǒng)各模塊的功能需求;系統(tǒng)設(shè)計(jì)介紹了系統(tǒng)設(shè)計(jì)的指導(dǎo)思想、數(shù)據(jù)庫(kù)的設(shè)計(jì)、系統(tǒng)模塊的設(shè)計(jì);關(guān)鍵技術(shù)介紹了在具體實(shí)現(xiàn)時(shí)需解決的一些技術(shù),如開(kāi)發(fā)框架的整合技術(shù)、開(kāi)發(fā)框架與數(shù)據(jù)