基于Springboot+mybatis-plus+spring security的408刷题小程序

简介:

        原始数据:书目信息、章节信息、历史信息、错题本信息、收藏信息、打卡信息、做题数量信息、题目信息、记录信息以及用户信息等。

        主要任务:系统主要采用spring boot作为后端框架,前端使用微信小程序的专有框架,主要实现对于计算机考研学子,提供一个可以刷题的微信小程序。主要功能包括,用户刷题历史的查看。用户对于题目收藏的添加、删除、查看。用户对于错题集的添加、删除、查看。刷题记录的修改,添加、查看。打卡记录的添加,查看。用户对于书目和章节信息的查看。以及用户对于自己学习检验等功能。

        技术要求: 1.数据库:MySQL数据库 ,redis数据库

        数据获取:python爬虫的Beautifulsoup库和Selenium自动化框架

        前端方面:微信小程序专有的框架

        后端方面:Springboot、mybatis-plus、spring security、redis

系统模块设计:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第1张图片

 部分数据库表设计:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第2张图片

基于Springboot+mybatis-plus+spring security的408刷题小程序_第3张图片

基于Springboot+mybatis-plus+spring security的408刷题小程序_第4张图片

基于Springboot+mybatis-plus+spring security的408刷题小程序_第5张图片

部分系统概要设计 :

题目练习流程图:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第6张图片

 添加查看删除错题流程图:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第7张图片

 类图设计:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第8张图片

 顺序图设计:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第9张图片

 用例图设计:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第10张图片

 部分接口设计:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第11张图片

基于Springboot+mybatis-plus+spring security的408刷题小程序_第12张图片

基于Springboot+mybatis-plus+spring security的408刷题小程序_第13张图片

基于Springboot+mybatis-plus+spring security的408刷题小程序_第14张图片

 部分系统详细设计:

登录模块设计:

模块描述:用户登录小程序进行验证,对用户输入的信息进行核检

输出项:无

成功:登录成功

失败:登录失败 / 授权失败 

算法描述:

使用spring security框架,对用户输入的信息就行核验,首先根据微信用户的唯一code码解析出用户的唯一标识openid,验证openid的合法性,如果为非法用户,则说明是新用户,根据openid创建该用户并返回登录成功,并将openid写入到redis中。

 

收藏模块设计:

(1)收藏题目显示

输出项:题目已收藏/题目未收藏

算法描述:

当用户进入答题界面/点击下一题后,系统调用controller层显示收藏的接口,获取当前题目的id,调用service进而调用dao层,查询该题目是否被加入到收藏,并将结果返回。

(2)添加收藏题目

输入项:序号+题目id+用户的id+创建时间+修改时间

输出项:添加成功/添加失败

算法描述:

调用controller层添加收藏接口,将题目信息进行封装后,调用service进而调用dao层,将数据写入到数据库,完成添加。

(3)删除收藏题目

输入项:题目id

输出项:删除成功/删除失败

算法描述:

调用controller层删除收藏题目的接口,将前端传过来的题目id传入函数,调用service进而调用dao层,将数据从数据库中删除。

(4)查看收藏题目

输出项:返回全部收藏题目

算法描述:

调用controller层全部查询收藏题目的接口,根据redis查询当前登录用户的openid传入函数,调用service进而调用dao层,将数据从数据库中查询出来,封装后返回给前端。

刷题记录模块设计:

(1)添加刷题记录

输入项:序号+索引+对应书的序号+用户的id+创建时间+修改时间+对应章节序号

输出项:添加成功/添加失败

算法描述:

调用controller层添加刷题记录接口,通过redis查询当前登录用户的openid,将从前端获取的刷题记录信息进行封装,调用service进而调用dao层,将数据写入到数据库,完成添加。

(2)修改刷题记录

输出项:修改后的刷题记录

算法描述:

调用controller层全部查询的刷题历史接口,通过redis查询当前登录用户的openid,获取从前端传过来的题目索引,调用service进而调用dao层,根据用户id将当前用户对应书目和章节的刷题记录进行修改,并将结果返回给前端。

(3)查询刷题记录

输出项:返回当前书目所有章节的刷题记录

算法描述:

调用controller层查询刷题记录接口,通过redis查询当前登录用户的openid,调用service进而调用dao层,根据用户id以及书目id和章节id将当前用户的对应章节的所有刷题记录返回给前端。

 部分小程序端设计:

        微信小程序的编写是有微信开发者工具编写编译,编辑机型为iPhone X,小程序共有10个页面,分别为初始页面,个人页面,收藏页面,真题强化页面,快速刷题页面,答题页面,错题本页面,刷题记录页面,考试页面,打卡页面。

考试页面:

考试页面主要是以答题页面为模板,不过答完题目之后,不会立刻获取正确答案和解析,必要等全部做完。在这个页面用户可以点击上一题和下一题来分别切换题目,当切换到最后一题时,系统会提示你最后一题,并把下一题按钮切换成提交按钮,用户还可以点击上一题去浏览检查做过的题目,等到测试结束,正确答案和解析会在题目下方显示。另外还设置了时间管理,一个可以只有拖拽的浮动球,显示考试时间,给用户带来真实的考试体验。

答题页面:

答题页面是很多刷题页面的模板,起初是设计不同书目每一章的答题页面,页框最上方显示章节name和刷题进度,下面显示题目信息,包括题目详细,选项内容,答案信息,解析等,用户可以在答题页面将题加入错题本和收藏夹里面,下面是下一个的按钮响应。

 

部分系统运行展示: 

1.用户刷题主页面

最上面导航栏对应的书目名字,还可以切换题库,中间部分是一个banner的轮播图,还有一部分是考研时间倒计时,下面部分就是章节的详细信息以及你刷题的数量和总数量。

基于Springboot+mybatis-plus+spring security的408刷题小程序_第15张图片

2.答题页面

用户可以点击每一章节题目进行练习,上面view内容主要有用户所刷题目的章节信息,和你做题记录,还有一个做题的程序条来提高用户做题体验,下面就是题目信息和选项信息,用户可以进行选择,选择完成后可以下一题切换题目。

基于Springboot+mybatis-plus+spring security的408刷题小程序_第16张图片

用户选择答案后,可以查看题目来源,正确答案和解析,还可以选择加入错题本,收藏题目,右角还可以联系客服反应异常情况。

基于Springboot+mybatis-plus+spring security的408刷题小程序_第17张图片

3.考试界面

用户可以选择对应的章节进行阶段性测试,同时也会有时间来提醒用户,以创造更逼真的考试环境,时间结束后,系统将会强制收卷。

基于Springboot+mybatis-plus+spring security的408刷题小程序_第18张图片

当用户做到最后一题的时候,会提示相应信息,并且按钮会变成交卷,交卷后就能查看答案和解析了。

基于Springboot+mybatis-plus+spring security的408刷题小程序_第19张图片

 4.错题本

用户可以在答题页面,快速刷题页面,真题强化页面,考试页面添加至错题本。

基于Springboot+mybatis-plus+spring security的408刷题小程序_第20张图片

 

用户所加入的错题会在错题本里面展示,在这里面用户之前所选的答案,正确答案和解析都会显示出来.

基于Springboot+mybatis-plus+spring security的408刷题小程序_第21张图片

5.打卡界面

用户做完题之后可以打卡,会统计这个月内你打卡的次数和总的坚持天数。

基于Springboot+mybatis-plus+spring security的408刷题小程序_第22张图片

 

 部分系统测试:

1.答题测试:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第23张图片

 2.考试测试:

基于Springboot+mybatis-plus+spring security的408刷题小程序_第24张图片

3.打卡测试: 

基于Springboot+mybatis-plus+spring security的408刷题小程序_第25张图片

 

 项目完整前后源码+项目说明书+数据库表设计 :

 戳他:正在为您运送作品详情

你可能感兴趣的:(大学生JAVA课程项目,spring,spring,boot,mybatis)