总737期第三期2021年1月
河南科技
Henan Science and Technology
基于轻量级框架SpringBoot的家教APP设计与实现
李竹林郭跃车雯雯
(延安大学数学与计算机科学学院,陕西延安716000)
摘要:本研究设计了一款基于Android手机的家教APP,为了减轻APP的整体重量,采用了轻量级的Spring⁃Boot微服务框架。本文阐述了系统的设计与开发过程,包括角用例图、功能模块图、数据库设计与实现的主要页面,并总结了开发过程中遇到的主要问题及解决方法。目前,这款家教APP已投入试运行,效果良好。关键词:Android;家教APP;SpringBoot;轻量级框架
中图分类号:TP393.09文献标识码:A文章编号:1003-5168(2021)03-0022-03 Design and Implementation of Tutor APP Based on Lightweight
Framework SpringBoot
LI Zhulin GUO Yue CHE Wenwen
(School of Mathematics and Computer Science,Yan'an University,Yan'an Shaanxi716000)
Abstract:This research designed a tutor APP based on Android phones,and used a lightweight SpringBoot microser⁃vice framework,in order to reduce the overall weight of the APP.This paper described the design and development process of the system,including role use case diagrams,functional module diagrams,main pages of database design and implementation,and summarized the main problems encountered in the development process and solutions.At present,this tutor APP has been put into trial operation with good results.
Keywords:Android;tutor APP;SpringBoot;lightweight framework
随着国家对教育的重视,家长对孩子的期望越来越高,许多家长希望孩子在课后也能获取知识,而且有些家长认为,有大学生“哥哥”式的家庭教师辅导孩子完成作业、查漏补缺、一起娱乐,似乎对孩子的快乐成长更有益。因此,大学生兼职家教在社会上已是普遍现象且存在已久。随着时代的发展,家教系统、家教平台、家教以及朋友圈、人托人等多种形式的服务模式应运而生,并发挥了积极的作用[1-2],其中人托人模式占比最大[3]。然而,这些渠道存在耗时、费力、不直接、不直观甚至收取中介费等缺点。
随着移动互联网与智能手机的高速发展与普及,手机APP(应用程序)已被赋予的新意义[4],已经成为方便人们日常生活的重要工具。本文根据大学生家教应用市场需求,利用SpringBoot、Dubbo等技术,设计了一款基于
Android的轻量级家教APP,克服原有家教市场上信息获取存在的弊端,使得家教与学生用户之间的信息获取更加快速与便捷。
1系统设计
1.1角及用例图
本系统作为一款家教APP,服务对象主要是学生用户和家教用户两类。学生通过该系统可以展示自己的优势,并可以通过家庭老师库查看家教信息并预约家教,还可以从平台上获取一些优质的文章学习;家教老师可以通过平台发布自己的信息,并可以通过学生库查看学生信息并预约学生,上传一些优质文章;学生与家教老师通过家教学堂完成在线教学过程,家教通过快速问答在线为学生答疑。两类角的用例图分别如图1、图2所示。
1.2总体功能设计
本家教APP主要包括信息库、家教学堂、互动天地和
收稿日期:2020-12-28
基金项目:省级大学生创新创业训练计划项目“大学生综合素质测评系统的设计与实现”(201813070)。
作者简介:李竹林(1972—),女,博士,教授,研究方向:计算机科学技术教学;郭跃(1998—),男,本科,研究方向:计算机科学与技术;车雯雯(1995—),女,在读硕士,研究方向:计算机图形图像处理。
信息技术
家教预约
<<;包含>>
<<;包含>>
<<;包含>><<;包含>>
<<;包含>><<;包含>>
<<;包含>>
<<;包含>><<;包含>>
查看家教信息
家教老师库
我的家教我的作业
家教学堂
我的信息
个人中心
我的需求
教育文章查看优质文章
学生用户快速问答
发表问题
问题评论
图1
学生用户用例图
<<;包含>><<;包含>>
<<;包含>><<;包含>>
<<;包含>>
<<;包含>>
<<;包含>>
<<;包含>>问题评论
发表问题
快速问答
家教老师我的信息
查看优质文章
教育文章个人中心
学员库
家教学堂
查看学员信息
学员预约
我的学员待办事项
图2家教用户用例图
个人中心四大模块,家教和学生对模块有不同权限与操作。其中,核心模块为家教学堂与互动天地,功
能分别如图3、图4所示。从图3可以看出,通过家教学堂,家教可以在线完成课程教学、作业的布置与批阅;从图4可以看出,在互动天地模块,学生与家教均可发贴,不但实现了优质教学资源共享,而且可以进行问题的讨论与交流,可大大提高学习便利性。
家教学堂
发布学习
任务
查看学习任务
课程学习发布作业
提交作业
作业批阅
图3家教学堂功能模块
互动天地
发帖
查看帖子
评论帖子
教育文章查看
图4互动天地功能模块
1.3
数据库设计
本系统的主要实体有学员、家教、课程、视频、学习任
务、作业和帖子等。它们的属性如表1所示。
表1
实体及其属性
序号123
4567
实体名学员家教课程
教学视频学习任务作业帖子
属性
姓名,性别,,类别,爱好,所需家教要求,姓名,性别,,教龄,所教课程,类别,学历,教学
经历,曾获奖励等
课程名,适用对象,课程介绍,课程大纲,所属分类
视频名称,视频,发布时间,所属类别任务标题,任务要求,日期,所属分类,附件作业内容,发布时间,文件链接,作业提交时间,批阅内
容,批阅时间
用户ID ,标题,内容,评论内容
根据实体及实体及实体间的联系,本文设计了login 、
student 、teacher 、Course 、CourseVideo 、HotCourse 、HotCour⁃
seVideo 、HotCourseSelection 、StudyAssignment 、Homework 、JobSubmission 、HomeworkReview 等17个数据表。在设计的过程中,除了基本的数据表外,还充分考虑了课程的多
样化与特。
2系统的实现页面2.1
开发工具与技术
一款实用的手机APP ,除了重要的功能外,也要确保性能稳定、整体轻便。为了达到此目的,本文采用以下主要工具与技术,如表2所示。其中,SpringBoot 是一个去配置化的开源轻量级框架[5-6]。在Spring4.0的基础上,本研究对Spring 框架进行整合,去掉原有的配置文件等众多烦琐操作。这不仅真正简化了开发过程,也使得项目对于依赖包之间的版本冲突、不稳定性等问题得到了很好的解决。
表2
家教APP 所采用的工具与技术
序号12
34567
891011
名称Dubbo
Vue+Element-UI Vue+Vant HBuildX SpringBoot ResultfulApi MySQL MyBatis Logback Swagger-UI Vue.js
目的
构建整体服务器集的分布式服务
前端页面的展示移动端的页面展示
将移动端的页面打包成移动端APP小视频app开发
提供统一接口
封装为JSON 数据,以供移动端和PC 端进行
Ajax 的异步调用存储数据
用于后端与数据库进行系统存储数据上的交
互操作日志文件的记录
使用注解的方式对接口功能及参数说明文档
进行归纳与整理将数据与视图分离开来
2.2遇到的问题及解决方法
整个项目设计与实现的过程遇到大大小小的问题,下面分析两个主要问题及其解决方法。
由于项目使用的大部分为链接形式,包括图片链接、视频链接、文章链接,所以用户上传新资源时出现了SpringBoot访问不到新资源的情况。这个问题可以通过将该项目重启,让SpringBoot重新去读取resources文件夹下的静态资源文件来解决,但其不是最好的办法。最终采用的解决方法是:只需要使用自定义的类继承WebM⁃vcConfigurer,并将该类中配置静态资源文件所需要存放的虚拟文件路径的映射
注册在重写的addResourceHan⁃dlers()方法即可。究其原因,SpringBoot为了保护项目的安全,不将文件目录结构暴露,防止他人通过绝对路径完成注入或其他操作而危害整个服务器的安全。
在互动天地模块的讨论区板块使用发帖子功能时,出现了后端接收不到来自前端的文件流的现象。解决方法有两种。一是在进行参数传递之前利用formdata将所有需要传递的数据进行封装,然后传递即可。二是直接利用表单传递。
2.3APP的主要页面
本教学APP共包含16个页面,其中的登录首页、学堂在线、互动天地等页面如图5所示。
3结语
本文根据在校大学生兼职家教和中小学生需要家教的实际需求,设计并开发了一款基于Android智能手机的轻量级家教APP,不但消除了用户需要通过第三方引起的耗时、费力等缺点,而且可以实现教师教、学生学的过程跟踪,促进教师和学生的共同进步。当然,目前版本的APP也存在一些不足,后期将根据用户提供的反馈信息,
从功能和性能角度对其进行维护与升级。
(a)首页(b)学堂在线页面(c)互动天地页面
图5家教APP的部分页面
参考文献:
[1]廖立雄.基于J2EE平台的家教信息管理系统设计与实现[D].成都:电子科技大学,2014:22-23.
[2]赖权威,张涌,曾兴旺,等.基于家教信息平台研发[J].软件工程,2018(7):46-49.
[3]陈小静.大学生兼职现状调查研究[J].山东农业工程学院学报,2019(12):64-65.
[4]杨慧波.浅谈APP的应用[J].中国科技信息,2012(23):79.
[5]桂晨晖.基于SpringBoot框架对P2P借贷平台的设计与实现[D].成都:电子科技大学,2019:28-29.
[6]王福强.SpringBoot揭秘:快速构建微服务体系[M].北京:机械工业出版社,2016:5.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论