【微信答题小程序的设计与实现4200字(论文)】_第1页
【微信答题小程序的设计与实现4200字(论文)】_第2页
【微信答题小程序的设计与实现4200字(论文)】_第3页
【微信答题小程序的设计与实现4200字(论文)】_第4页
【微信答题小程序的设计与实现4200字(论文)】_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微信答题小程序的设计与实现目录TOC\o"1-2"\h\u21809微信答题小程序的设计与实现 122049摘要 132106引言 1276361.微信答题小程序研究的目的和意义 228382.相关技术 2260162.1微信小程序 214442.2Java语言 2205772.3MySQL数据库 27063.系统的功能需求分析 2151094.系统数据库的设计 3200854.1概念结构设计 382374.2逻辑结构设计 412485.系统主要模块的实现 439405.1用户登录模块的实现 4131705.2题目管理模块的实现 5297365.3试卷查看模块的实现 511055.4在线答题模块的实现 646435.5后台管理模块的实现 7200216.系统测试 8184567.总结 929719参考文献 10摘要:传统纸质的考试方式存在过于麻烦和浪费等问题,为了节省人力、物力和财力,充分利用碎片化时间进行学习和测试,提出设计一个微信答题小程序系统。小程序选取Java语言和MySQL数据库等技术作为开发工具。系统包含系统管理员和微信端用户,主要实现了用户管理、题目管理、试卷管理和在线答题等功能。经测试,系统运行良好,能基本达到预期目的。关键词:微信小程序;Java;MySQL;答题引言目前市面上的一些答题类APP虽然能够满足随时随地考试的需要,但存在安装麻烦和占用手机内存大等问题,而微信答题小程序在实现类似功能的基础上,与其他手机APP相比更为方便快捷,它无需安装、无需卸载、用完即走,真正实现了随时随地学习。而随着微信的普及,微信小程序的开发和研究变得越来越火热,微信答题小程序正是在这种背景之下应运而生的。1.微信答题小程序研究的目的和意义微信答题小程序的设计与实现,主要是为广大用户提供一个方便快捷的答题测验小程序。系统的重点设计模块是后台管理模块和在线答题模块,后台实现对程序的总体管控,小程序端提供给用户答题。微信答题小程序的使用可以充分利用碎片化时间,极大的促进了学习进展。微信答题小程序对一些有应试需求的人来说帮助极大,是互联网思维在教育教学方面的一个应用,有利于增强用户的自主学习能力[3],对用户各阶段的学习和应试都具有重要意义。相关技术微信小程序微信小程序简而明之就是在微信基础之上运行的小程序。微信小程序的主体用户为媒体、政府、企业、个人和组织的开发者。微信小程序不会占用系统内存、不需要下载,可以给用户提供方便快捷的API接口和各种组件,使用相对简单,应用较为广泛。2.2Java语言Java是一门面向对象的直译型编程语言,Java语言的最大优点是其具有开源性,除此之外,Java还具有高移植性即使用Java编写的程序在不同平台部署时只需要修改极少量的代码,这为开发者提供了极大的方便。2.3MySQL数据库MySQL是一个开源的关系型数据管理系统[8]。MySQL的运行速度快,安全性和连接性比较好,与其它的数据库相比MySQL的使用较为简单。MySQL的数据管理功能比较强大,系统的稳定性好,因此应用也比较广泛。3.系统的功能需求分析系统的主要目的是开发一个方便快捷的微信答题小程序系统。系统应包含两类用户:系统管理员和微信端用户。其中系统管理员能够对试卷和题目的相关信息进行管理;微信端用户能够进行查看试卷、在线答题测试、查看所做试卷中的错题、查看试卷分数和答题记录等操作。系统的功能模块结构图如图1所示。图1系统功能模块图4.系统数据库的设计4.1概念结构设计经分析可以得出系统的主要实体是管理员用户、试题、试卷和微信端用户等,主要关系为管理员管理试题的题型、题目和分值等,管理员管理试卷的创建和试卷名称等,试题通过组卷生成试卷,用户通过在线答题回答试卷题目,管理员管理微信端用户的基本信息,它们包含的属性和相互关系如图2所示。图2系统数据库E-R图4.2逻辑结构设计通过对数据库设计进行分析,确定答题小程序系统的数据库中应该包含qst_subject(试题表),qst_paper(试卷表),sys_menu(菜单表),qst_answer_subject(回答表),sys_role(角色表),sys_user(用户表),sys_user_role(用户角色关系表)等表结构,这里重点展示系统中的三个核心表qst_subject表、qst_answer_subject表、qst_paper表的结构,分别如表1,表2和表3所示。表1qst_subject表FieldTypeLengthKeyExtraidint11PrimaryKeyIDtypetinyint2类型subjectvarchar50题目contentvarchar255内容rightvarchar10正确答案scoreint11分值create_timedatetime11创建时间表2qst_answer_subject表FieldTypeLengthKeyExtraidint11PrimaryKeyIduser_idint11用户paper_idint11问卷question_idint11题目answervarchar255答案scoreint11得分errorint11错误create_timedatetime11创建时间表3qst_paper表FieldTypeLengthKeyExtraidint11PrimaryKeyIdpaper_namevarchar255试卷名称statustinyint2状态create_timedatetime11创建时间5.系统主要模块的实现5.1用户登录模块的实现用户登录模块,将会传递微信用户的code,根据微信返回的唯一标识openid生成token,并存入session当中,在数据库中做对应的查询后返回用户对象,存入map当中,然后返回给调用的方法。在系统登录过程中,登录控制模块将启用数据库查询里的用户明细,并对账号和密码开展认证,仅有输入了正确的账号和密码后,系统登录才会取得成功。在登录控制模块中,设定用户试错次数为3次。在输入不正确的或不存在的帐户和密码时,会弹出消息提醒,指出登录过程中不正确的输入或错误操作。5.2题目管理模块的实现题目管理模块可以实现对题目进行添加、修改和删除等操作。这里主要介绍一下单选题的录入。单选题的录入:管理员进入后台的题目管理界面,对单选题的类型、题目、内容、正确答案和分值等信息进行填写,后台服务器接口可以将信息存入MySQL中并对数据信息进行处理,然后返回给小程序端并渲染到页面上即可完成题目的录入。其中,单选题或多选题的选项可以根据用户需要增加或减少。删除选项的实现方法是:使用vue的数据绑定原理,默认动态展示4个文本框进行选项填写,通过v-if判断当前index,即当前文本框数量来展示删除按钮,点击删除按钮后,调用removeItem(index)方法来删除绑定数据,从而减少options数量,实现文本框的删除。试题的多个答案之间通过系统预定的关键字“key+选项字母”(如keyA、keyB)的形式进行分隔,最终将题目各个信息存入数据库的qst_subject中。具体试题添加界面如图3所示。图3试题添加5.3试卷查看模块的实现小程序主页面会展示可以作答的试卷列表,点击试卷列表后可以进行答题。试卷查看界面如图4所示。图4试卷查看所有试卷展示界面使用ScrollView(可滚动视口)上下滑动主界面,以在页面上显示更多信息,从而使该应用更易于在手机上使用。在主界面推送的试卷中,可以点击试卷进入答题界面进行答题测试。用户完成试卷的所以题目并点击提交按钮后,会将信息传入后台的answerlist接口并保存在数据库中,并经过后台处理将信息返回给小程序页面,生成对答题信息的记录。5.4在线答题模块的实现在线答题模块主要完成了用户对在线答题考试的需求,包括查看题目内容、倒计时显示、答题和提交试卷等。该模块页面设计:通过app.js中的全局公用的js方法,制作页面的js动态效果,页面通过调用app.wxss文件来对界面的按钮颜色、排版、文字大小和字体等做出渲染。该模块功能实现:微信端用户进入小程序主界面可以查看已生成的试卷并进行在线答题测试。用户在小程序端中对应的答题界面上可以完成测试答题,点击“提交”按钮后,系统结束考试,保存用户的答题信息并提交给服务器请求后台接口。然后后台将答题结果存入数据库,系统会根据数据库的qst_subject中录入的正确答案进行评分。当用户提交试卷后,答题信息会存在一个临时容器session中,后台服务器会先对题目的ID和题目的题型type进行一个分析处理,判断出其为单选题还是多选题,并将答题结果和所储存的正确答案进行对比,如果结果一致则判定这道题是正确的,并对用户的分值进行累加,如果结果不一致或不完全一致则判断为错误,不对分值进行累加,并将错题信息存入后台的answererror接口中并最终存储到数据库中的qst_answer_subject表中,小程序端可以通过请求接口来获取错题的信息。在线答题界面如图5所示。图5在线答题考试5.5后台管理模块的实现后台管理主要包括用户管理、题目管理、试卷管理、用户登录管理等模块,各个模块实现的方法比较相似,这里进行简要介绍。小程序通过wx:request()请求后台接口获取数据库中的数据,经过后台处理将数据返回给小程序并渲染到页面上。进行数据查询的过程中,控制模块将启用数据库查询里的用户明细,并对账号和密码开展认证,仅有session当中存在登录的凭据时,才能请求到对应的数据,否则将跳转到登录界面。后台管理模块主要使用Java的SpringBoot服务框架,SpringBoot项目可以使用.yml的配置文件形式定义出项目的数据库连接信息,无需像以前的ssh等项目需要书写大量的配置信息,后台管理界面如图6所示。图6后台管理界面系统测试为了保证系统能够顺利的运行,提高系统运行的可靠性和可行性,提出合理的修改办法和有效的挽救措施,让整个程序更加的优化,在整个系统设计完成以后,需要进行多次的系统测试,需要对每个模块都进行多次测试,以确保系统能够顺利运行。测试时对系统各项功能主要采用了黑盒测试的方法,下面对试卷的添加功做一个测试,其它模块的测试过程与其基本一致,这里不再一一测试。测试的目的是向试卷信息表中添加一个试卷信息,并看当各项数据满足试卷添加的要求时能否成功添加试卷的信息,当添加的数据不符合要求时,能否给出相应的提示。测试的前提条件是管理员用户已登录后台管理系统。测试的结果为当输入符合要求的试卷信息时,系统会将其存到相应的数据表里,则可认为成功,否则则视为失败。测试用例如表4所示。表4试卷添加功能测试用例表编号测试步骤输入数据预期结果测试结果1输入完整的试卷信息,即试卷名称、试卷ID、创建时间、状态。按“添加”按钮进行操作试卷名称:试卷3试卷ID:4创建时间:2021-5-1016:49:12状态:1可以成功插入数据库qst_paper表,并在页面上显示出来。同预期结果2添加试卷信息全部输入为空。全部为空系统不予存放同预期结果3添加试卷信息有一栏为空。试卷名称:试卷3试卷ID:4创建时间:2021-5-1016:49:12状态:空系统可以存放,并在页面显示出来。同预期结果经测试,系统各项功能运行良好,符合预期。总结微信答题小程序主要包含系统管理员和微信端用户两类用户。其中系统管理员能够对用户基本信息、试卷基本信息和题目基本信息等进行管理。微信端用户具有在线答题、查看成绩、记录和查看错题和查看答题记录等功能。由于我的能力不足以及时间有限,系统的设计与实现过程中还有很多问题没有考虑充分,有一部分功能还没有实现,在组卷算法、系统稳定性以及界面交互性等方面也存在很多的不足,因此以后还需要更加努力的来完善系统。

参考文献[1]刘红卫.微信小程序应用探析[J].无线互联科技,2016(23):11-12+40.[2]武思怡,解佺,张雨,等.微信小程序开发研究[J].无线互联科技,2018,15(11):52-54.[3]刘玉佳.微信“小程序”开发的系统实现及前景分析[J].信息通信,2017(01):260-261.[4]吕翔,罗回彬,陈蔓,等.基于微信小程序的在线练习系统[J].电脑知识与技术,2021,17(03):122-124.[5]陆禹文.基于微信小程序的移动学习平台的设计、开发及应用[D].兰州:兰州大学,2020.[6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论