【微信答題小程序的設(shè)計與實現(xiàn)4200字(論文)】_第1頁
【微信答題小程序的設(shè)計與實現(xiàn)4200字(論文)】_第2頁
【微信答題小程序的設(shè)計與實現(xiàn)4200字(論文)】_第3頁
【微信答題小程序的設(shè)計與實現(xiàn)4200字(論文)】_第4頁
【微信答題小程序的設(shè)計與實現(xiàn)4200字(論文)】_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

微信答題小程序的設(shè)計與實現(xiàn)目錄TOC\o"1-2"\h\u21809微信答題小程序的設(shè)計與實現(xiàn) 122049摘要 132106引言 1276361.微信答題小程序研究的目的和意義 228382.相關(guān)技術(shù) 2260162.1微信小程序 214442.2Java語言 2205772.3MySQL數(shù)據(jù)庫 27063.系統(tǒng)的功能需求分析 2151094.系統(tǒng)數(shù)據(jù)庫的設(shè)計 3200854.1概念結(jié)構(gòu)設(shè)計 382374.2邏輯結(jié)構(gòu)設(shè)計 412485.系統(tǒng)主要模塊的實現(xiàn) 439405.1用戶登錄模塊的實現(xiàn) 4131705.2題目管理模塊的實現(xiàn) 5297365.3試卷查看模塊的實現(xiàn) 511055.4在線答題模塊的實現(xiàn) 646435.5后臺管理模塊的實現(xiàn) 7200216.系統(tǒng)測試 8184567.總結(jié) 929719參考文獻 10摘要:傳統(tǒng)紙質(zhì)的考試方式存在過于麻煩和浪費等問題,為了節(jié)省人力、物力和財力,充分利用碎片化時間進行學(xué)習(xí)和測試,提出設(shè)計一個微信答題小程序系統(tǒng)。小程序選取Java語言和MySQL數(shù)據(jù)庫等技術(shù)作為開發(fā)工具。系統(tǒng)包含系統(tǒng)管理員和微信端用戶,主要實現(xiàn)了用戶管理、題目管理、試卷管理和在線答題等功能。經(jīng)測試,系統(tǒng)運行良好,能基本達到預(yù)期目的。關(guān)鍵詞:微信小程序;Java;MySQL;答題引言目前市面上的一些答題類APP雖然能夠滿足隨時隨地考試的需要,但存在安裝麻煩和占用手機內(nèi)存大等問題,而微信答題小程序在實現(xiàn)類似功能的基礎(chǔ)上,與其他手機APP相比更為方便快捷,它無需安裝、無需卸載、用完即走,真正實現(xiàn)了隨時隨地學(xué)習(xí)。而隨著微信的普及,微信小程序的開發(fā)和研究變得越來越火熱,微信答題小程序正是在這種背景之下應(yīng)運而生的。1.微信答題小程序研究的目的和意義微信答題小程序的設(shè)計與實現(xiàn),主要是為廣大用戶提供一個方便快捷的答題測驗小程序。系統(tǒng)的重點設(shè)計模塊是后臺管理模塊和在線答題模塊,后臺實現(xiàn)對程序的總體管控,小程序端提供給用戶答題。微信答題小程序的使用可以充分利用碎片化時間,極大的促進了學(xué)習(xí)進展。微信答題小程序?qū)σ恍┯袘?yīng)試需求的人來說幫助極大,是互聯(lián)網(wǎng)思維在教育教學(xué)方面的一個應(yīng)用,有利于增強用戶的自主學(xué)習(xí)能力[3],對用戶各階段的學(xué)習(xí)和應(yīng)試都具有重要意義。相關(guān)技術(shù)微信小程序微信小程序簡而明之就是在微信基礎(chǔ)之上運行的小程序。微信小程序的主體用戶為媒體、政府、企業(yè)、個人和組織的開發(fā)者。微信小程序不會占用系統(tǒng)內(nèi)存、不需要下載,可以給用戶提供方便快捷的API接口和各種組件,使用相對簡單,應(yīng)用較為廣泛。2.2Java語言Java是一門面向?qū)ο蟮闹弊g型編程語言,Java語言的最大優(yōu)點是其具有開源性,除此之外,Java還具有高移植性即使用Java編寫的程序在不同平臺部署時只需要修改極少量的代碼,這為開發(fā)者提供了極大的方便。2.3MySQL數(shù)據(jù)庫MySQL是一個開源的關(guān)系型數(shù)據(jù)管理系統(tǒng)[8]。MySQL的運行速度快,安全性和連接性比較好,與其它的數(shù)據(jù)庫相比MySQL的使用較為簡單。MySQL的數(shù)據(jù)管理功能比較強大,系統(tǒng)的穩(wěn)定性好,因此應(yīng)用也比較廣泛。3.系統(tǒng)的功能需求分析系統(tǒng)的主要目的是開發(fā)一個方便快捷的微信答題小程序系統(tǒng)。系統(tǒng)應(yīng)包含兩類用戶:系統(tǒng)管理員和微信端用戶。其中系統(tǒng)管理員能夠?qū)υ嚲砗皖}目的相關(guān)信息進行管理;微信端用戶能夠進行查看試卷、在線答題測試、查看所做試卷中的錯題、查看試卷分數(shù)和答題記錄等操作。系統(tǒng)的功能模塊結(jié)構(gòu)圖如圖1所示。圖1系統(tǒng)功能模塊圖4.系統(tǒng)數(shù)據(jù)庫的設(shè)計4.1概念結(jié)構(gòu)設(shè)計經(jīng)分析可以得出系統(tǒng)的主要實體是管理員用戶、試題、試卷和微信端用戶等,主要關(guān)系為管理員管理試題的題型、題目和分值等,管理員管理試卷的創(chuàng)建和試卷名稱等,試題通過組卷生成試卷,用戶通過在線答題回答試卷題目,管理員管理微信端用戶的基本信息,它們包含的屬性和相互關(guān)系如圖2所示。圖2系統(tǒng)數(shù)據(jù)庫E-R圖4.2邏輯結(jié)構(gòu)設(shè)計通過對數(shù)據(jù)庫設(shè)計進行分析,確定答題小程序系統(tǒng)的數(shù)據(jù)庫中應(yīng)該包含qst_subject(試題表),qst_paper(試卷表),sys_menu(菜單表),qst_answer_subject(回答表),sys_role(角色表),sys_user(用戶表),sys_user_role(用戶角色關(guān)系表)等表結(jié)構(gòu),這里重點展示系統(tǒng)中的三個核心表qst_subject表、qst_answer_subject表、qst_paper表的結(jié)構(gòu),分別如表1,表2和表3所示。表1qst_subject表FieldTypeLengthKeyExtraidint11PrimaryKeyIDtypetinyint2類型subjectvarchar50題目contentvarchar255內(nèi)容rightvarchar10正確答案scoreint11分值create_timedatetime11創(chuàng)建時間表2qst_answer_subject表FieldTypeLengthKeyExtraidint11PrimaryKeyIduser_idint11用戶paper_idint11問卷question_idint11題目answervarchar255答案scoreint11得分errorint11錯誤create_timedatetime11創(chuàng)建時間表3qst_paper表FieldTypeLengthKeyExtraidint11PrimaryKeyIdpaper_namevarchar255試卷名稱statustinyint2狀態(tài)create_timedatetime11創(chuàng)建時間5.系統(tǒng)主要模塊的實現(xiàn)5.1用戶登錄模塊的實現(xiàn)用戶登錄模塊,將會傳遞微信用戶的code,根據(jù)微信返回的唯一標識openid生成token,并存入session當(dāng)中,在數(shù)據(jù)庫中做對應(yīng)的查詢后返回用戶對象,存入map當(dāng)中,然后返回給調(diào)用的方法。在系統(tǒng)登錄過程中,登錄控制模塊將啟用數(shù)據(jù)庫查詢里的用戶明細,并對賬號和密碼開展認證,僅有輸入了正確的賬號和密碼后,系統(tǒng)登錄才會取得成功。在登錄控制模塊中,設(shè)定用戶試錯次數(shù)為3次。在輸入不正確的或不存在的帳戶和密碼時,會彈出消息提醒,指出登錄過程中不正確的輸入或錯誤操作。5.2題目管理模塊的實現(xiàn)題目管理模塊可以實現(xiàn)對題目進行添加、修改和刪除等操作。這里主要介紹一下單選題的錄入。單選題的錄入:管理員進入后臺的題目管理界面,對單選題的類型、題目、內(nèi)容、正確答案和分值等信息進行填寫,后臺服務(wù)器接口可以將信息存入MySQL中并對數(shù)據(jù)信息進行處理,然后返回給小程序端并渲染到頁面上即可完成題目的錄入。其中,單選題或多選題的選項可以根據(jù)用戶需要增加或減少。刪除選項的實現(xiàn)方法是:使用vue的數(shù)據(jù)綁定原理,默認動態(tài)展示4個文本框進行選項填寫,通過v-if判斷當(dāng)前index,即當(dāng)前文本框數(shù)量來展示刪除按鈕,點擊刪除按鈕后,調(diào)用removeItem(index)方法來刪除綁定數(shù)據(jù),從而減少options數(shù)量,實現(xiàn)文本框的刪除。試題的多個答案之間通過系統(tǒng)預(yù)定的關(guān)鍵字“key+選項字母”(如keyA、keyB)的形式進行分隔,最終將題目各個信息存入數(shù)據(jù)庫的qst_subject中。具體試題添加界面如圖3所示。圖3試題添加5.3試卷查看模塊的實現(xiàn)小程序主頁面會展示可以作答的試卷列表,點擊試卷列表后可以進行答題。試卷查看界面如圖4所示。圖4試卷查看所有試卷展示界面使用ScrollView(可滾動視口)上下滑動主界面,以在頁面上顯示更多信息,從而使該應(yīng)用更易于在手機上使用。在主界面推送的試卷中,可以點擊試卷進入答題界面進行答題測試。用戶完成試卷的所以題目并點擊提交按鈕后,會將信息傳入后臺的answerlist接口并保存在數(shù)據(jù)庫中,并經(jīng)過后臺處理將信息返回給小程序頁面,生成對答題信息的記錄。5.4在線答題模塊的實現(xiàn)在線答題模塊主要完成了用戶對在線答題考試的需求,包括查看題目內(nèi)容、倒計時顯示、答題和提交試卷等。該模塊頁面設(shè)計:通過app.js中的全局公用的js方法,制作頁面的js動態(tài)效果,頁面通過調(diào)用app.wxss文件來對界面的按鈕顏色、排版、文字大小和字體等做出渲染。該模塊功能實現(xiàn):微信端用戶進入小程序主界面可以查看已生成的試卷并進行在線答題測試。用戶在小程序端中對應(yīng)的答題界面上可以完成測試答題,點擊“提交”按鈕后,系統(tǒng)結(jié)束考試,保存用戶的答題信息并提交給服務(wù)器請求后臺接口。然后后臺將答題結(jié)果存入數(shù)據(jù)庫,系統(tǒng)會根據(jù)數(shù)據(jù)庫的qst_subject中錄入的正確答案進行評分。當(dāng)用戶提交試卷后,答題信息會存在一個臨時容器session中,后臺服務(wù)器會先對題目的ID和題目的題型type進行一個分析處理,判斷出其為單選題還是多選題,并將答題結(jié)果和所儲存的正確答案進行對比,如果結(jié)果一致則判定這道題是正確的,并對用戶的分值進行累加,如果結(jié)果不一致或不完全一致則判斷為錯誤,不對分值進行累加,并將錯題信息存入后臺的answererror接口中并最終存儲到數(shù)據(jù)庫中的qst_answer_subject表中,小程序端可以通過請求接口來獲取錯題的信息。在線答題界面如圖5所示。圖5在線答題考試5.5后臺管理模塊的實現(xiàn)后臺管理主要包括用戶管理、題目管理、試卷管理、用戶登錄管理等模塊,各個模塊實現(xiàn)的方法比較相似,這里進行簡要介紹。小程序通過wx:request()請求后臺接口獲取數(shù)據(jù)庫中的數(shù)據(jù),經(jīng)過后臺處理將數(shù)據(jù)返回給小程序并渲染到頁面上。進行數(shù)據(jù)查詢的過程中,控制模塊將啟用數(shù)據(jù)庫查詢里的用戶明細,并對賬號和密碼開展認證,僅有session當(dāng)中存在登錄的憑據(jù)時,才能請求到對應(yīng)的數(shù)據(jù),否則將跳轉(zhuǎn)到登錄界面。后臺管理模塊主要使用Java的SpringBoot服務(wù)框架,SpringBoot項目可以使用.yml的配置文件形式定義出項目的數(shù)據(jù)庫連接信息,無需像以前的ssh等項目需要書寫大量的配置信息,后臺管理界面如圖6所示。圖6后臺管理界面系統(tǒng)測試為了保證系統(tǒng)能夠順利的運行,提高系統(tǒng)運行的可靠性和可行性,提出合理的修改辦法和有效的挽救措施,讓整個程序更加的優(yōu)化,在整個系統(tǒng)設(shè)計完成以后,需要進行多次的系統(tǒng)測試,需要對每個模塊都進行多次測試,以確保系統(tǒng)能夠順利運行。測試時對系統(tǒng)各項功能主要采用了黑盒測試的方法,下面對試卷的添加功做一個測試,其它模塊的測試過程與其基本一致,這里不再一一測試。測試的目的是向試卷信息表中添加一個試卷信息,并看當(dāng)各項數(shù)據(jù)滿足試卷添加的要求時能否成功添加試卷的信息,當(dāng)添加的數(shù)據(jù)不符合要求時,能否給出相應(yīng)的提示。測試的前提條件是管理員用戶已登錄后臺管理系統(tǒng)。測試的結(jié)果為當(dāng)輸入符合要求的試卷信息時,系統(tǒng)會將其存到相應(yīng)的數(shù)據(jù)表里,則可認為成功,否則則視為失敗。測試用例如表4所示。表4試卷添加功能測試用例表編號測試步驟輸入數(shù)據(jù)預(yù)期結(jié)果測試結(jié)果1輸入完整的試卷信息,即試卷名稱、試卷ID、創(chuàng)建時間、狀態(tài)。按“添加”按鈕進行操作試卷名稱:試卷3試卷ID:4創(chuàng)建時間:2021-5-1016:49:12狀態(tài):1可以成功插入數(shù)據(jù)庫qst_paper表,并在頁面上顯示出來。同預(yù)期結(jié)果2添加試卷信息全部輸入為空。全部為空系統(tǒng)不予存放同預(yù)期結(jié)果3添加試卷信息有一欄為空。試卷名稱:試卷3試卷ID:4創(chuàng)建時間:2021-5-1016:49:12狀態(tài):空系統(tǒng)可以存放,并在頁面顯示出來。同預(yù)期結(jié)果經(jīng)測試,系統(tǒng)各項功能運行良好,符合預(yù)期。總結(jié)微信答題小程序主要包含系統(tǒng)管理員和微信端用戶兩類用戶。其中系統(tǒng)管理員能夠?qū)τ脩艋拘畔ⅰ⒃嚲砘拘畔⒑皖}目基本信息等進行管理。微信端用戶具有在線答題、查看成績、記錄和查看錯題和查看答題記錄等功能。由于我的能力不足以及時間有限,系統(tǒng)的設(shè)計與實現(xiàn)過程中還有很多問題沒有考慮充分,有一部分功能還沒有實現(xiàn),在組卷算法、系統(tǒng)穩(wěn)定性以及界面交互性等方面也存在很多的不足,因此以后還需要更加努力的來完善系統(tǒng)。

參考文獻[1]劉紅衛(wèi).微信小程序應(yīng)用探析[J].無線互聯(lián)科技,2016(23):11-12+40.[2]武思怡,解佺,張雨,等.微信小程序開發(fā)研究[J].無線互聯(lián)科技,2018,15(11):52-54.[3]劉玉佳.微信“小程序”開發(fā)的系統(tǒng)實現(xiàn)及前景分析[J].信息通信,2017(01):260-261.[4]呂翔,羅回彬,陳蔓,等.基于微信小程序的在線練習(xí)系統(tǒng)[J].電腦知識與技術(shù),2021,17(03):122-124.[5]陸禹文.基于微信小程序的移動學(xué)習(xí)平臺的設(shè)計、開發(fā)及應(yīng)用[D].蘭州:蘭州大學(xué),2020.[6

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論