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

正文內(nèi)容

基于ssh的計(jì)算機(jī)基礎(chǔ)知識(shí)在線考試系統(tǒng)畢業(yè)論文(文件)

 

【正文】 按試卷查詢、按考試時(shí)間查詢、按考生身份證號(hào)查詢、或者三者結(jié)合在一起查詢。圖413 試卷管理模塊框架圖管理員登陸后,單擊“試卷管理”超鏈接,進(jìn)入到查看試卷信息列表頁(yè)面,在頁(yè)面中將以列表形式顯示全部試卷信息。如下圖所示。圖415 添加試卷頁(yè)面修改試卷信息同添加試卷信息頁(yè)面大致相同,不同之處在于:在進(jìn)入修改試卷信息頁(yè)面時(shí),通過Ajax異步獲取該試卷信息,并通過javascript腳本將試卷各屬性信息顯示在頁(yè)面,以方便用戶修改試卷信息。圖416 試題管理模塊框架圖管理員登陸考試系統(tǒng)后,點(diǎn)解“題目管理”超鏈接,將進(jìn)入到考試題目信息列表頁(yè)面,如圖417所示。該頁(yè)面有四個(gè)表單,通過bootstrap框架提供的標(biāo)簽頁(yè)插件組合在一起,當(dāng)點(diǎn)擊上面的四個(gè)題型按鈕時(shí),便會(huì)切換到相應(yīng)題型的添加頁(yè)面,下面只展示了添加判斷題的界面。同修改試卷信息一樣,在進(jìn)入到該頁(yè)面時(shí),通過Ajax向后臺(tái)發(fā)送異步請(qǐng)求,獲取該題目信息,并通過javascript腳本將相應(yīng)信填寫入表單中,以方便用戶修改。第5章 關(guān)鍵代碼與難點(diǎn)分析 SSH全注解框架的搭建:網(wǎng)上有很多ssh框架整合jar包詳解,這里不再贅述。添加監(jiān)聽器,讀取Spring配置文件:! 這個(gè)監(jiān)聽器就是為了讀取Spring的配置文件 listener listenerclass /listenerclass /listener配置歡迎頁(yè):welefilelist welefile//welefile welefile//welefile/welefilelist2):根據(jù)下面代碼中basepackage指定的路徑,掃描其下所有包含注解的Bean,并自動(dòng)注入。通過class里面定義的類名稱我們很容易就能理解,這是使用注解的方式映射實(shí)體以及創(chuàng)建Hiberante SessionFactory。兩種方式的區(qū)別主要是,注解式只用寫那么一句話,然后在業(yè)務(wù)類或方法中加入Transactional這個(gè)注解標(biāo)記,就完成事務(wù)聲明,不過對(duì)于每個(gè)業(yè)務(wù)類都需要在類或方法中加入這些標(biāo)記。在訪問需要用戶登錄的URL時(shí),若用戶未登錄或session失效,就會(huì)跳轉(zhuǎn)至globalresults中定義的頁(yè)面。 if (user != null){ return ()。 基于注解的struts action跳轉(zhuǎn)1. 跳轉(zhuǎn)至某個(gè)頁(yè)面。results里面可以有多個(gè)Result,以逗號(hào)隔開。 if ((user) != null){ (user)。有時(shí)action執(zhí)行后需要返回到另一個(gè)action,這時(shí)就需要在Result里面指定跳轉(zhuǎn)類型dispatcher 為默認(rèn)跳轉(zhuǎn)類型type=redirectAction, 因?yàn)閟truts2跳轉(zhuǎn)類型為dispatcher,用于返回一個(gè)視圖資源(如:jsp)。 String password = (password)。 } catch (Exception e){ ()。1. 發(fā)送Ajax異步請(qǐng)求:$.ajax({ type:39。, data:{...}, success: function(data){ ... }})。charset=utf8)。若要返回其他形式的數(shù)據(jù),需先將其轉(zhuǎn)換成json格式的數(shù)據(jù),如write(jsonStr),jsonStr為轉(zhuǎn)換的json格式的字符串。在Ajax的success方法里面的data就是返回的數(shù)據(jù)。為了快速合理、準(zhǔn)確無(wú)誤的自動(dòng)評(píng)分,研究了相關(guān)文獻(xiàn),發(fā)現(xiàn)填空題具有一題多空、答案多值及相鄰答案可以相互換位等特點(diǎn)。2)答案無(wú)標(biāo)點(diǎn)試題答案中不含標(biāo)點(diǎn)符號(hào),以減少考生在輸入中出現(xiàn)錯(cuò)誤,從而合理自動(dòng)的評(píng)分。所謂核心詞匯,就是“凡是可以得分的答案中所必須包含的詞匯”。2)只取兩種結(jié)果:對(duì)于每個(gè)空格,要么得分,要么不得分。圖51 自動(dòng)評(píng)分流程圖2) 編碼實(shí)現(xiàn)// param canAnswer 考生答案 param modelAnswer 標(biāo)準(zhǔn)答案public class BlankScore {public static int autoScore(String []canAnswer, String []modelAnswer, int point){ int score = 0, count = 0。 i 。 j 。 for (k = 0。 temp[count++] = str[j]。 } } } } } return score。在系統(tǒng)開發(fā)初期,我用了兩三天的時(shí)間分析系統(tǒng)的需求,確定數(shù)據(jù)庫(kù)設(shè)計(jì)及系統(tǒng)流程。由于大學(xué)的課程中沒有完整的SSH框架講解課程,尤其是全注解的方式,在一定程度上加大了系統(tǒng)開發(fā)難度。在系統(tǒng)實(shí)施階段,遇到的另一個(gè)困難便是填空題的自動(dòng)評(píng)分功能,最開始毫無(wú)頭緒,后來(lái)在網(wǎng)上看到一篇論文專門研究填空題自動(dòng)評(píng)分算法,通過一天時(shí)間的研究,用自己的思路實(shí)現(xiàn)了這個(gè)算法,在前面的關(guān)鍵代碼分析一掌中已進(jìn)行了詳細(xì)說(shuō)明,這里就不再贅述。同時(shí)也告訴我一個(gè)道理,學(xué)習(xí)任何東西都要用于去嘗試,如果總是害怕失敗、害怕麻煩,或者總是靠別人幫忙,那么你永遠(yuǎn)就學(xué)不會(huì)這個(gè)知識(shí)點(diǎn),只有自己去嘗試一遍,才會(huì)真正的掌握它,它才會(huì)真正的屬于你。這兩個(gè)功能我將在以后的學(xué)習(xí)和工作中繼續(xù)完善。在設(shè)計(jì)過程中,雖然遭遇不少挫折,且經(jīng)常遇到問題,正因?yàn)檫@樣,我才有學(xué)習(xí)新知識(shí)的機(jī)會(huì),通過查找資料能夠?qū)栴}各個(gè)擊破,從而鍛煉了我對(duì)待事情的細(xì)心認(rèn)真的習(xí)慣,也提高了獨(dú)立思考的能了。當(dāng)然信心也是必不可少的,當(dāng)你遇到陌生的知識(shí)點(diǎn)時(shí),就會(huì)有無(wú)從下手的感覺,但只要對(duì)自己有信心,不怕困難的堅(jiān)持下去,就能把它做好。最后,感謝曾給過我?guī)椭耐八哪甑耐瑢W(xué)和在畢業(yè)設(shè)計(jì)中給過我?guī)椭耐瑢W(xué)和朋友,愿他們心想事成。這次畢業(yè)設(shè)計(jì)的順利完成首先要感謝我的導(dǎo)師關(guān)培超老師,認(rèn)真負(fù)責(zé)的工作態(tài)度以及嚴(yán)謹(jǐn)?shù)闹螌W(xué)風(fēng)格,都使我深受啟發(fā),他無(wú)論在理論上還是實(shí)踐中,都給予了我很多的幫助,感謝老師耐心的輔導(dǎo),我的畢業(yè)設(shè)計(jì)才能順利完成,也讓我學(xué)到了很多知識(shí)。經(jīng)過這次實(shí)踐我體會(huì)到了軟件開發(fā)工作中最重要的是有一份細(xì)心和耐心。讓我學(xué)習(xí)了專業(yè)知識(shí)的同時(shí)也對(duì)本專業(yè)的發(fā)展充滿了希望。一是考試題目的管理:沒有通過題庫(kù)來(lái)隨機(jī)生成試卷,而是將試卷與考試題目相關(guān)聯(lián),這樣為考試題目的修改工作增加了很多工作量,而且在刪除試卷時(shí),與之相關(guān)的考試題目也將被刪除,這是本系統(tǒng)最不足的地方。收獲之一便是對(duì)SSH框架已經(jīng)達(dá)到很熟悉的程度,再也沒有之前望而生畏的感覺,并且學(xué)會(huì)了一種新的使用方式,即使用注解。接下來(lái)便是寫代碼階段,首先把后臺(tái)基本功能完成,然后通過頁(yè)面進(jìn)行測(cè)試,功能全部完成后,則開始做頁(yè)面的優(yōu)化工作。在開發(fā)在線考試系統(tǒng)的過程中,遇到了很大困難。在系統(tǒng)開發(fā)的過程中,采用了SSH全注解框架,使整個(gè)系統(tǒng)的設(shè)計(jì)思路更加清晰,而在頁(yè)面部分應(yīng)用bootstrap框架,是頁(yè)面代碼更加簡(jiǎn)潔明了。 //標(biāo)準(zhǔn)答案與前一個(gè)不同,計(jì)分 count = 0。 k++){ if (canAnswer[i].contains(temp[k])){ break。amp。//考生答案等于標(biāo)準(zhǔn)答案,計(jì)分,到達(dá)下一個(gè)空格 } else { //空格答案多值或多個(gè)空格答案并列的情況下,對(duì)答案關(guān)鍵字進(jìn)行分解 String str[] = modelAnswer[i].split(\\|)。 String temp[] = new String[10]。在考生答案與標(biāo)磚答案模糊匹配的前提下,先判斷是否有并列的空格,如果不是,計(jì)分,并同時(shí)創(chuàng)建臨時(shí)數(shù)組用來(lái)存放匹配的標(biāo)準(zhǔn)答案;如果是并列空格,再判斷是否是重復(fù)答案,如果不是重復(fù)答案,計(jì)分,并將已經(jīng)匹配的標(biāo)準(zhǔn)答案加到臨時(shí)數(shù)組當(dāng)中。具體規(guī)則是:如果一個(gè)空格的答案有多種,將多個(gè)答案同通過豎線連接在一起并以此來(lái)作為標(biāo)準(zhǔn)答案;如果相鄰的空格答案并列,則將并列的答案連接在一起作為每個(gè)空格標(biāo)準(zhǔn)答案。要實(shí)現(xiàn)系統(tǒng)對(duì)填空題的準(zhǔn)確且有效自動(dòng)評(píng)分,就一定要按照某種正確的規(guī)則來(lái)設(shè)置考試題目的標(biāo)準(zhǔn)答案,這個(gè)規(guī)則不僅僅要具有簡(jiǎn)單性和一致性,還要能方便的在實(shí)際中應(yīng)用。由此設(shè)計(jì)實(shí)現(xiàn)了填空題自動(dòng)評(píng)分算法,經(jīng)系統(tǒng)驗(yàn)證,此算法能滿足通用填空題的需求。若返回的是json對(duì)象,則需要將data進(jìn)行轉(zhuǎn)換后再使用。 reports為查詢到的成績(jī)對(duì)象列表。這里write中的省略號(hào)表示要返回的數(shù)據(jù)。1)action中方法返回值設(shè)為void://分頁(yè)查詢指定條件下的考生成績(jī)信息Action(value=reportsByFilter)public void allDetailReportByFilter(){}2) 在Action中將處理結(jié)果返回Ajax://分頁(yè)查詢指定條件下的考生成績(jī)信息HttpServletResponse response = ()。, url:39。 }} Action處理AJAX異步請(qǐng)求AJAX通過在后臺(tái)與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,可以使網(wǎng)頁(yè)實(shí)現(xiàn)異步更新。 (admin)。//添加管理員Action(value=adminadd, results={ Result(name=success, type=redirectAction, location=adminlist)})public String adminAdd(){ try { HttpServletRequest request = ()。 } return success。//退出系統(tǒng)Action(value=logout, results={ Result(name=success, location=/)})public String logout(){ HttpServletRequest request = ()。如下面的代碼段所示,Action括號(hào)里面的value表示當(dāng)前處理請(qǐng)求的action,同form表單中action的值相同。 //返會(huì)登陸頁(yè)面 } }}從session中獲取當(dāng)前登錄的用戶信息,如果該用戶存在,則繼續(xù)遞歸執(zhí)行后面的攔截器;否則,本系統(tǒng)中指定的是登陸頁(yè)面。創(chuàng)建AuthorityInterceptor類,并繼承MethodFilterInterceptor,為什么繼承它呢?因?yàn)檫@個(gè)類是對(duì)方法進(jìn)行攔截,而在本系統(tǒng)中,需要是對(duì)大部分的方法展開攔截,而只需要對(duì)少數(shù)幾個(gè)方法進(jìn)行排除。在這里我寫了兩種方式。bean id=sessionFactory class= property name=dataSourceref local=dataSource/ref/property property name=packagesToScan list value/value /list /property property name=hibernateProperties props prop key=/prop prop key=show_sqltrue/prop prop key=true/prop prop key=update/prop /props /property/bean 下面代碼是事務(wù)定義,而且是使用注解方式定義事務(wù)(Transactional)。有了它,我們將不用再去寫那繁瑣的bean id= class= /,這就是全注解的主旨。1):,它是供web容器(比如tomcat)加載的,通常定義這個(gè)web項(xiàng)目的必要信息。圖419 修改考試題目頁(yè)面在考試題目管理頁(yè)面,當(dāng)需要?jiǎng)h除某一考試題目時(shí),點(diǎn)擊操作欄里的“刪除”按鈕,將彈出是否刪除的對(duì)話框,點(diǎn)解“確定”按鈕,該試題將會(huì)被刪除,并提示用戶操作成功。圖418
點(diǎn)擊復(fù)制文檔內(nèi)容
化學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1