摘 要
这款学龄前儿童国学教育APP采用SpringBoot框架,为家长和孩子提供了一个内容丰富且互动性强的教育平台。家长可以通过注册和登录功能为孩子创建个性化账号,在主界面上浏览各种学习资源和育儿知识。平台的内容根据不同类别进行组织,帮助家长轻松找到符合孩子需求的学习内容。互动问答板块提供了多种题型,帮助家长了解孩子的学习进度,并且通过亲子互动活动,家长和孩子可以共同参与、学习和玩耍,增强教育的乐趣与效果。此外,平台还包括古诗信息、社交分享、社区互动等功能,孩子可以在寓教于乐的环境中探索传统文化,同时家长也能在育儿知识板块获得实用的育儿技巧。
平台提供了完善的个人信息管理功能,家长可以在“我的”页面随时更新个人资料、修改密码以及查看自己收藏的内容,确保账户安全和使用便捷。管理员后台功能强大,涵盖了用户管理、内容审核、公告发布、资源上传等多个方面,确保平台内容的高质量与时效性。通过这些精心设计的功能,APP不仅为家长提供了丰富的学习资源,还通过互动设计提升了用户体验,增强了家长与孩子的教育互动。管理员的高效管理确保了平台内容的有序运营和持续优化,为用户提供了一个安全、便捷且高效的教育平台。
关键词:学龄前儿童、国学教育、SpringBoot、安卓APP。
Abstract
This preschool Chinese education app adopts the SpringBoot framework, providing parents and children with a rich and interactive educational platform. Parents can create personalized accounts for their children through registration and login functions, and browse various learning resources and parenting knowledge on the main interface. The content of the platform is organized according to different categories to help parents easily find learning content that meets their children's needs. The interactive Q&A section provides a variety of question types to help parents understand their children's learning progress. Through parent-child interactive activities, parents and children can participate, learn, and play together, enhancing the fun and effectiveness of education. In addition, the platform also includes functions such as ancient poetry information, social sharing, and community interaction. Children can explore traditional culture in an educational and entertaining environment, while parents can also obtain practical parenting skills in the parenting knowledge section.
The platform provides comprehensive personal information management functions, allowing parents to update their personal information, change passwords, and view their favorite content on the "My" page at any time, ensuring account security and convenient use. The administrator backend has powerful functions, covering multiple aspects such as user management, content review, announcement publishing, and resource uploading, ensuring the high quality and timeliness of platform content. Through these carefully designed features, the APP not only provides parents with rich learning resources, but also enhances the user experience through interactive design, strengthening the educational interaction between parents and children. The efficient management of administrators ensures the orderly operation and continuous optimization of platform content, providing users with a safe, convenient, and efficient education platform.
key word: preschool children, traditional Chinese education SpringBoot、 Android app.
目录
第一章 绪 论
1.1选题背景
学龄前儿童教育在近年来受到了越来越多家庭的重视,尤其是培养孩子们的传统文化和道德素养方面,国学教育逐渐成为教育的重要内容。随着互联网技术的快速发展,学龄前儿童国学教育APP应运而生,为孩子们提供了更加灵活、互动的学习方式。为了确保平台的高效运行和数据安全,MySQL数据库被广泛应用,其高效的数据处理能力和卓越的安全性保障了用户数据的安全存储和系统的稳定运行[1]。在平台设计中,结合心流理论进行学龄前儿童教育的研究,增强了学习的互动性,提升了孩子们的学习兴趣和专注度[2]。此外,结合学龄前儿童教育的特点,互动式学习方式有效地调动了孩子们的参与感和学习动力,这种方法能够在轻松愉快的氛围中帮助孩子们掌握知识[3]。
在技术层面,Java Web框架被广泛应用,尤其在文件上传和内容管理方面提供了高效的解决方案,使得教育内容的管理更加便捷和灵活[4]。通过这些先进技术的整合,学龄前儿童国学教育APP不仅提升了平台的操作性和用户体验,同时也能够确保平台的安全性和稳定性。该平台为孩子们提供了一个丰富、安全且互动性强的学习环境,有助于推动传统文化在新时代的传承与普及。
1.1选题意义
开发学龄前儿童国学教育APP具有重要的现实意义。通过整合现代信息技术与传统国学教育资源,该应用不仅能够为家长和孩子提供一个便捷的学习平台,还能促进儿童早期教育的现代化转型[5]。在设计方面,遵循交互设计原则,确保界面友好、操作简便,可以有效提升用户体验,使孩子们更容易接受并喜欢上这种学习方式。此外,结合视觉设计理论,如ARCS模型,可以使教育内容更加生动有趣,增强孩子的学习兴趣和参与度[6]。基于认知心理学的研究成果,针对学龄前儿童的认知特点进行设计,有助于提高教育的有效性,帮助孩子们更好地理解和吸收知识[7]。技术实现上,采用SpringBoot框架进行数据库接口设计,保证了系统的高效稳定运行,为用户提供流畅的操作体验,同时简化了开发过程,提高了开发效率[8]。通过这些综合措施,该APP不仅能丰富学龄前儿童的国学知识,还能培养他们的文化认同感和民族自豪感,为传承和弘扬中华优秀传统文化奠定坚实基础。最终,这样的系统将成为家庭教育的重要补充,助力儿童全面发展。
1.2国内外研究现状
1.2.1国内研究现状
近年来,国内针对学龄前儿童教育的APP逐渐增多,尤其在传统文化教育方面,越来越多的应用致力于为家长和孩子提供全面的国学教育资源。这些APP不仅注重传统文化的传承,还结合了现代教育理念,通过互动性强的学习模块和趣味化的教学方式,吸引孩子们的注意力,提升学习效果。在内容上,平台普遍设置了丰富的学习资料,如古诗词、经典故事、启蒙知识等,以培养孩子的语言表达能力和文化认同感。
目前,国内市场上的国学教育APP大多数都针对孩子的认知发展特点,设计了简洁、易操作的界面,并通过互动问答、亲子活动等功能增强用户体验。同时,育儿知识板块也成为平台的重要组成部分,家长可以通过这些内容更好地掌握育儿技巧与方法,提升教育效果。与此同时,许多APP也加强了社交分享和社区互动功能,家长可以在平台上分享育儿心得,参与讨论,促进家庭教育的交流与合作。这些功能有效提高了家长的参与度和孩子的学习兴趣。
从技术层面来看,国内许多学龄前儿童教育APP采用了较为成熟的开发框架,如SpringBoot等,确保平台具备稳定性和流畅的使用体验。此外,随着教育行业的数字化转型,越来越多的APP开发者意识到内容的多样性与质量至关重要。因此,如何通过内容分类管理、学习内容推荐和后台管理优化,提供更精准的学习资源,是当前国内市场发展的一个关键方向。随着需求的增长和技术的进步,国学教育APP的应用场景将进一步拓展,带来更高质量的教育体验。
1.2.2国外研究现状
国外针对学龄前儿童的教育APP近年来也取得了显著发展,尤其是在早期教育和传统文化教育的融合方面。许多应用平台开始探索将全球各地的传统文化与现代教育相结合,尤其在美国、欧洲和亚洲部分国家,学龄前儿童教育APP的市场逐步兴起。这些平台通常注重通过互动游戏、视频内容和情景化学习方式提升孩子的兴趣,推动他们在轻松愉快的氛围中进行知识学习。平台内容多样化,包括经典故事、语言启蒙、艺术与文化课程等,旨在培养孩子的综合素质,特别是文化认同感和社会适应能力。
在国外,学龄前儿童教育APP普遍具有较强的亲子互动功能,家长不仅能够与孩子一起参与学习,还能通过平台提供的反馈功能监控孩子的学习进度。这种互动模式有效促进了家庭教育的合作,也增强了家长对孩子成长过程的参与感与责任感。此外,许多国外平台还整合了社交分享和社区互动功能,家长之间可以分享育儿经验和教育资源,增加社群之间的交流与支持。这种社交化的学习平台不仅提升了用户体验,也帮助家长建立起教育资源共享的网络。
从技术实施来看,国外学龄前教育APP采用了多种先进的技术框架和平台,确保产品稳定性与良好的用户体验。很多APP也注重个性化学习路径的设计,根据孩子的兴趣和学习习惯推送定制化内容,帮助家长和孩子更高效地学习。随着市场需求的变化,国外教育APP开发者越来越重视内容质量的提升与多元化,在产品设计上不断创新,以便满足不同年龄段和文化背景家庭的需求。这些发展趋势表明,国外学龄前儿童教育APP正朝着更加精细化和多元化的方向发展,未来也将为全球教育领域带来更多的启示和借鉴。
1.3系统的特点
(1)学龄前儿童国学教育APP的Web后台管理采用Spring Boot框架,取代了传统的JSP+JavaBean+Servlet技术,简化了开发流程和配置,减少了冗余代码,使得开发过程更加高效和灵活。SpringBoot框架以其易于配置、快速开发和高性能,成为许多企业和项目的首选开发框架,尤其适合构建现代化的教育平台。
(2)学龄前儿童国学教育APP的前端采用安卓APP框架,结合原生Android技术开发前端应用。通过安卓系统的强大支持,APP能够提供流畅的用户体验,并在多个安卓设备上稳定运行。安卓平台的高兼容性和丰富的开发工具,使得教育内容的呈现和互动功能的实现更加简单高效。
(3)学龄前儿童国学教育APP的数据库采用MySQL,具有高效的执行性能和快速的查询响应速度,确保了海量教育资源的流畅访问。MySQL数据库在教育类APP中得到了广泛应用,其稳定性、安全性和跨平台支持使得系统能够在不同环境下稳定运行,确保数据的安全性和系统的高效性。
1.4论文结构与章节安排
本文共分为七章,章节内容安排如下:
第一章:引言,主要介绍学龄前儿童国学教育APP领域研究的背景和意义,概述研究的现状和系统特点。
第二章:关键技术,主要探讨和说明实现学龄前儿童国学教育APP的关键技术。
第三章:系统分析,主要从学龄前儿童国学教育APP的可行性、功能、性能等方面进行分析,为后续系统设计提供理论支持。
第四章:系统设计,主要对学龄前儿童国学教育APP功能模块、数据库进行功能设计。
第五章:系统实现,主要介绍了学龄前儿童国学教育APP各个用户的功能、系统界面的实现。
第六章:系统测试,主要对学龄前儿童国学教育APP进行测试,验证功能完整性、稳定性和安全性,评估系统在实际运行中的性能表现。
第七章:结束语。总结全文研究内容,提出对学龄前儿童国学教育APP未来发展的展望和建议,指出研究的不足和可优化之处,为相关领域的进一步探索提供参考。
第二章 开发工具及关键技术介绍
2.1 Java
Java是一种跨平台的编程语言,广泛用于开发各种类型的应用程序,包括Web应用、移动应用和大型软件系统。在学龄前儿童国学教育APP中,Java通常用于后端开发,提供强大的处理能力和稳定性。同时Java是一种面向对象的编程语言,支持封装、继承和多态等特性,使代码更易于维护和重用。还拥有丰富的标准库和第三方框架,如Spring、Hibernate等,可以大大提高开发效率。
2.2 MySQL
MySQL是一种流行的开源关系型数据库管理系统,用于存储和管理数据。在学龄前儿童国学教育APP中,MySQL可以用于数据存储、数据查询和数据管理等方面,用户可以免费使用和修改源代码,为平台提供可靠和高性能的数据库支持。MySQL支持多种存储引擎,如InnoDB和MyISAM,可以根据不同的应用场景选择合适的存储引擎,以提高性能;提供了多种数据安全机制,如用户权限管理、数据加密和备份恢复等,确保数据的安全性。
2.3 SpringBoot框架
SpringBoot是一个用于构建微服务的Java框架,简化了Spring应用程序的开发和部署过程。SpringBoot通过自动配置和约定优于配置的理念,简化了Spring应用程序的开发过程,使开发者可以更快地构建和部署应用程序;拥有丰富的生态系统,如Spring Cloud、Spring Security等,可以满足各种企业级应用的需求。在学龄前儿童国学教育APP中,SpringBoot可以帮助开发团队快速搭建后端服务,并实现各种功能模块的集成和管理。
2.4 B/S模式
B/S模式(Browser/Server模式)是一种网络应用架构,其中浏览器(Browser)作为客户端与服务器(Server)进行通信。这种模式使用户可以通过普通的Web浏览器访问应用程序,而无需安装额外的客户端软件。用户通过浏览器发送请求,服务器接收并处理这些请求,然后将结果返回给浏览器显示给用户。在学龄前儿童国学教育APP中,采用B/S模式的优势在于跨平台的兼容性,用户可以在不同操作系统和设备上访问应用程序。此外,维护和部署也更为简便,并且能够实现较高的安全性,因为服务器端控制了应用程序和数据的访问权限。
2.5 Android开发工具
Android是基于Linux内核的操作系统,早期由Google开发,后由开放手机联盟开发。它采用了软件堆的架构,主要分为三部分。底层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。Android在未公开之前常被传闻为GPhone。
它采用了软件堆层(software stack,又名软件叠层)的架构,主要分为三部分:底层以Linux核心为基础,由c语言开发,只提供基本功能。中间层包括函数库Library和虚拟机Virtual Machine,由C++开发。最上层是各种应用软件,包括通话程序,短信程序等,应用软件则由各公司自行开发,以Java编写。
第三章 系统分析
3.1可行性分析
通过综合考虑经济、操作、技术等因素,可以对学龄前儿童国学教育APP的可行性进行全面评估。这将有助于确定项目的成功概率,并为项目规划提供坚实的基础。
3.1.1经济可行性分析
从经济角度来看,基于SpringBoot搭建学龄前儿童国学教育APP的投入成本相对较低,因为SpringBoot本身是一个免费、开源的框架,可以节省开发成本。同时,使用MySQL作为数据库也具有成本效益高的优势。APP作为平台的使用界面,能够更好地吸引用户参与,从而提升平台的商业化价值,增加商业合作和广告推广等收入来源。因此,本系统具有经济可行性。
3.1.2操作可行性分析
从操作角度来看,SpringBoot的简洁性和高度集成的特点使得系统的部署和运行相对简单,容易维护和管理。同时,APP作为用户主要的操作入口,有利于用户体验的优化,提升用户的参与度和留存率。因此,本系统具有操作可行性。
3.1.3技术可行性分析
从技术角度来看,SpringBoot作为一种轻量级、快速构建的Java框架,能够提高开发效率,降低系统的复杂程度,易于维护和升级。同时,MySQL作为关系型数据库,能够支持平台数据的存储与管理,保障系统的稳定性和高效性。因此,本系统具有技术可行性。
3.2系统功能需求分析
学龄前儿童国学教育APP的设计与实现是基于Spring Boot、安卓APP、JAVA语言和MySQL数据库构建的的教育APP。系统分为三个角色:注册用户和管理员,每个角色都有不同的功能权限,确保系统的安全性和可靠性。下面是系统的功能需求分析:
1.注册用户功能分析:注册用户是本APP的主要受众,功能设计上以提升用户体验、满足教育学龄前儿童需求为目标。注册用户的功能模块包括:
注册登录:用户通过注册账号或社交平台快捷登录方式进入应用。注册后,用户可填写个人基本信息并设置登录密码,确保信息安全。登录后,用户可以访问所有平台功能,进行个性化学习和互动。
首页浏览:在首页,用户可以通过导航栏进行各项操作,查看平台的轮播图、最新育儿知识和学习内容推荐等信息。用户可以根据自己的兴趣查看相关类别的内容,且“我的”页面可进行资料修改,满足个性化需求。用户点击某个学习类别后,相同类别的内容会优先展示,提供更精准的内容推荐。
网站公告:用户可以查看各类网站公告信息,包括网站的最新通知、关于我们的介绍、联系方式和平台说明等。公告板块帮助用户及时了解平台的最新动态和重要信息。
互动问答:用户可以参与平台的互动问答,选择答题类型,包括单选、多选、填空题、判断题和主观题等。用户可以通过输入关键词进行搜索,查看特定问题。答题后,系统会自动评估并展示分数,帮助用户了解自己的答题水平。
学习内容:用户可以查看平台提供的各类学习内容,包括详细的内容标题、类别、学习难度以及相关学习视频等。用户可以通过输入标题、选择类别等多维度进行搜索,精准找到感兴趣的内容。同时,用户可以点赞、收藏和评论喜欢的内容,提升互动体验。
亲子互动:用户可以浏览亲子互动活动,了解互动主题、互动形式、时长以及互动视频等。用户可以通过关键词进行搜索,查看相关活动内容,并可以点赞、收藏、评论或回复,增加亲子互动的参与感。
古诗信息:用户可以查看平台上各类古诗的详细信息,包括古诗的题目、类型、作者、年代等内容。同时,用户也可以收听诗歌音频或观看诗歌视频。用户可以对自己喜欢的古诗点赞、收藏、评论,增进对传统文化的理解和兴趣。
社交分享:用户可以浏览其他用户发布的帖子,查看帖子的详细内容。用户还可以通过输入关键词进行搜索,查找感兴趣的帖子。用户可自由发布内容,与其他人分享学习和育儿经验。互动过程中,用户可点赞、收藏和评论帖子,增强社交体验。
育儿知识:用户可以查看平台推荐的育儿知识和相关文章,帮助用户更好地了解育儿技巧和儿童教育知识。用户可以点赞、收藏和评论这些文章,与其他家长交流育儿心得。
我的:用户可以在“我的”页面修改个人资料,包括头像、昵称、联系方式等基本信息。同时,用户还可以更改登录密码,确保账户的安全性。
收藏:用户可以查看和管理自己收藏的内容,包括学习内容、网站公告、亲子互动、古诗信息等。若用户不再喜欢某些内容,可以随时删除这些收藏,保持个人收藏的整洁和有序。
论坛管理:用户可查看自己在平台上发布的帖子,检查帖子详情及其评论。若帖子不再需要或受到负面评论,用户可以选择删除该帖子。平台还提供搜索功能,方便用户查找和管理自己发布的内容。
2.管理员功能分析:管理员负责管理APP整体内容,确保系统高效运作。管理员的功能模块包括:
后台首页:管理员可以在首页进行个人资料的管理,包括修改个人资料和修改登录密码等操作。通过该功能,管理员能够方便地更新自己的基本信息以及确保账户安全。
系统用户管理:管理员可以管理系统中的各类用户,包括管理员和注册用户。功能支持通过输入用户姓名和选择用户性别进行搜索,并且可以对页面上的用户进行查询、添加、删除等操作。这样能够方便管理员管理用户的账户信息,确保系统的有效运作。
内容分类管理:在内容分类管理中,管理员可以查看各类学习内容的分类列表详情,并通过输入内容类别进行搜索。管理员能够对页面内容进行查询、删除等操作,确保分类信息的更新与准确性。同时,管理员还可以通过输入新的内容类别进行提交,添加新的学习内容分类,满足不断变化的教学需求。
学习内容管理:管理员可以查看所有学习内容的详细信息及用户评论。通过输入内容标题、选择内容类别等方式进行搜索,管理员可以高效地查询到特定学习内容,并对页面内容进行删除等操作。此外,管理员还可以添加新的学习内容,包括输入内容标题、选择内容类别、难度等级、上传内容封面、学习视频等,确保平台提供的学习资源丰富且符合教育标准。
亲子互动管理:管理员在亲子互动管理模块中,可以查看所有亲子互动活动的列表及详细信息,包括用户的评论。通过输入互动主题或互动类型进行搜索,管理员能够快速定位到特定互动内容,并对其进行查询或删除。管理员还可以添加新的互动活动,通过输入互动主题、互动类型、时长要求、互动内容、上传互动视频等信息进行提交添加。同时,管理员可以查看互动视频,确保互动活动符合预期效果。
古诗信息管理:在古诗信息管理模块,管理员可以查看所有古诗的列表,并查看详细的古诗信息。通过输入古诗题目、类型、诗人姓名等信息进行搜索,管理员可以对古诗内容进行查询、删除等操作。管理员也能够添加新的古诗信息,输入古诗题目、类型、诗人姓名、年代、古诗内容、上传封面图、音频和视频等,丰富古诗内容的呈现形式。
系统管理:在轮播图管理功能中,管理员可以查看所有轮播图的详细信息,并通过输入标题进行搜索,快速查询到特定的轮播图。管理员可以对页面上的轮播图进行删除或添加操作,保证首页展示的内容及时更新。
公告信息管理:管理员可以在公告信息管理模块中查看所有公告的详细信息,并通过输入公告标题进行搜索。管理员能够对公告信息进行查询、删除或添加操作,确保用户获取到最新的系统通知和公告信息。
资源管理:在育儿知识资源管理中,管理员可以查看所有育儿知识的详细信息和用户评论,支持通过输入标题、标签或选择分类进行搜索。管理员可以对资源进行查询、删除或添加操作,保证育儿知识库的及时更新。此外,管理员还可以管理知识分类,查看各分类的详情并进行相应的搜索、删除或添加操作。互动问答管理模块允许管理员查看用户的互动问答详情,进行题库管理、答题和评分操作。
交流管理:在社区分享管理中,管理员可以查看用户分享的帖子和用户评论,支持通过输入标题、选择分类进行搜索,便于管理员对帖子进行查询、删除或添加操作。同时,管理员还可以管理分享分类,查看各分享分类的详情,并进行查询、删除或添加操作,确保平台内的交流内容健康有序。
根据使用该系统的用户角色可以划分为注册用户和管理员,具体如下所示。
学龄前儿童国学教育APP注册用户角色用例图如下所示。

图3-1 注册用户角色用例图
学龄前儿童国学教育APP管理员角色用例图如下所示。

图3-2 管理员角色用例图
3.3系统非功能性分析
学龄前儿童国学教育APP在撰写系统毕业论文时,非功能性需求分析是一个重要的部分。非功能性需求主要关注的是系统如何运行,而不是它具体完成什么功能。这些需求包括性能、可用性、安全性、可维护性、可扩展性、易用性等方面。以下是一个关于学龄前儿童国学教育APP非功能性需求分析的概要。
性能需求:系统需确保快速响应和高吞吐量,以支持大量用户同时访问,即使在高峰时段也能保持流畅的操作体验,避免因延迟或卡顿影响用户体验。
可用性:系统必须具备高可用性,采用冗余部署、负载均衡等策略,确保即使部分组件故障也能迅速恢复服务,减少服务中断时间,保障用户业务的连续性。
安全性:鉴于系统处理用户敏感信息,如个人信息等,必须实施严格的安全措施,包括数据加密、访问控制、防攻击机制等,以保护用户数据免受未授权访问或泄露。
可维护性:系统设计应注重可维护性,采用模块化、标准化的架构,提供详尽的开发文档和用户手册,确保系统易于理解和维护,降低长期运维成本。
可扩展性:随着业务的发展,系统可能需要扩展功能或提升性能。因此,系统需具备灵活的可扩展性,能够轻松添加新模块、优化性能,以应对未来增长的需求。
易用性:用户界面应直观易用,符合用户习惯,提供清晰的导航和友好的操作反馈,帮助用户快速上手并高效完成任务,提升整体用户满意度。
3.4系统流程分析
3.4.1用户注册流程图
注册的过程,第一部分是账号的注册,第二部分是信息完善。在业务开展过程中,管理员可对用户信息进行修改等管理操作,注册流程如图3-3用户注册流程图所示。

图3-3 用户注册流程图
3.4.2用户登录流程图
登录时,用户填写用户名、密码、选择身份进行登录,在登录过程中后端会对发送过来的信息进行验证和判断,具体的登录流程如图3-4用户登录流程图所示。

图3-4 用户登录流程图
3.4.3系统操作流程
用户打开并进入系统后,会先显示登录界面,输入正确的用户名和密码,系统自动检测信息,若信息无误,则用户会进入系统功能界面,进行操作,否则会提示错误无法登录,操作流程如图3-5所示。

图3-5 系统操作流程图
3.4.4 添加信息流程
管理员可以对公告信息、学习内容等进行信息的添加,用户可以对自己权限内的信息进行添加,输入信息后,系统会自行验证输入的信息和数据,若信息正确,会将其添加到数据库内,若信息有误,则会提示重新输入信息,添加信息流程如图3-6所示。

图3-6 添加信息流程图
3.4.5 修改信息流程
管理员可以对公告信息、学习内容等进行的修改,用户可以对自己权限内的信息进行修改,首先进入修改信息界面,输入修改信息数据,系统进行数据的判断验证,修改信息合法则修改成功,信息更新至数据库,信息不合法则修改失败,重新输入。修改信息流程图如图3-7所示。

图3-7 修改信息流程图
3.4.6 删除信息流程
管理员可以对公告信息、学习内容等进行信息的删除,对要删除的信息进行选中后,点击删除按钮,系统会询问是否确定,若点击确定,则系统会删除掉选中的信息,并在数据库内对信息进行删除,删除信息流程图如图3-8所示。

图3-8 删除信息流程图
第四章 系统设计与实现
4.1系统总体设计思路
学龄前儿童国学教育APP采用Browser/Server结构,(浏览器/服务器)和基于Web服务前后台交互的模式,是一个适用于Windows体系环境下的模型结构。只要用户有符合程序运行的硬件系统,并连上互联网,便可以在任何时间、任何地点使用。系统工作原理图如图4-1所示:

图4-1系统工作原理图
其最终前后台交互原理如图4-2所示。

图4-2前后台交互原理
具体交互流程为:浏览器中执行具体操作,操作命令将生成一个do方法。该方法使得浏览器能够访问后台中的Controller层,Controller层由于业务上的需要执行进而访问Service层。Service层收到指令后将会去调用内部DAO层的接口。接口将会和MyBatis层下的一个SQL语句相对接。对接好之后进而访问MySql数据库。更新底层数据,然后将数据同步回MyBatis层,同步变化后的数据将通过DAO层接口,Service层和后台Controller层,直观反映到浏览器页面上。
4.2系统结构设计
学龄前儿童国学教育APP的整体结构设计如图4-2所示。

图4-2整体功能结构设计图
4.3系统核心代码设计
学龄前儿童国学教育APP的核心代码设计如下:
4.3.1用户注册
注册页UserController.java,传入user对象,并将"user_id"、 "state"、 "user_group"、"login_time"、"phone"、"phone_state"、 "username"、"nickname"、"password"、"email"、"email_state"、"avatar"、"create_time"输入,重点是 "username"、"nickname"、"password"必须输入,通过获取username,数据库查询是否有该用户,如果存在,则提示“用户已存在”,否则执行将UserId置为空(数据库表中该字段已设置自动递增),代码如图4-3所示。
图4-3注册核心代码图
4.3.2用户登录
登录页,首先传入"username"、"email"、"phone"、"password",用户可通过用户名、邮箱、手机号进行登陆,通过判断resultList来确定查询结果,然后执行查询用户组UserGroup,用户组里面不存在,依然报“用户不存在”,执行完以上代码,最后涉及到用户带有“审核”的,会查询examine_state(用户的审核状态),数据库表user_group中含有source_table和source_field进行查询,以上步骤完成,对输入的密码进行存储Token到数据库,匹对账号和密码,数据库中的AccessToken为令牌,用于身份认证,代码如图4-4所示。
图4-4用户登录核心代码图
4.3.3修改密码
修改密码,通过请求data,获取旧密码,并将新密码重新赋值,期间都是需要通过加密,代码如图4-5所示。
图4-5修改密码核心代码图
4.3.4修改数据
修改一个数据,原理与add基本一致,不同点在于通过readConfig()读取关键字,以及通过readQuery()获取URL后面?指定位置的标识,转成Map对象后,执行update操作,同样通过拼接的sql语句执行,执行过程读取query,toWhereSql()语句完成数据库操作,body为修改对象的值,代码如图4-6所示。
图4-6修改数据核心代码图
4.3.5删除数据
删除一条数据,通过readQuery(),获取URL后面的对象地址,删除FROM具体的table,query删除查询FindConfig语句,代码如图4-7所示。
图4-7删除数据核心代码图
4.3.6获取列表
通过请求的参数获取列表数据,代码如图4-8所示。
图4-8获取列表核心代码图
4.3.7图片上传
通过请求的参数获取列表数据,代码如图4-9所示。
图4-9图片上传核心代码图
4.4数据库设计
数据库设计是指在构建和组织数据库系统时,根据实际需求和目标,进行数据模型的设计和规划的过程。它涉及到确定数据库中的表、字段、关系以及约束等方面的设计决策。
4.4.1 概念模型设计
下面是整个系统中主要的数据库表总E-R实体关系图。

图4-10 系统E-R图
4.4.2 逻辑结构设计
在这一步中,我们将概念转换为实际的数据。由于数据库中包含了大量的信息,我们只展示了一些表格。
表access_token (登陆访问时长)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | token_id | int | 10 | 0 | N | Y | 临时访问牌ID | |
| 2 | token | varchar | 64 | 0 | Y | N | 临时访问牌 | |
| 3 | info | text | 65535 | 0 | Y | N | ||
| 4 | maxage | int | 10 | 0 | N | N | 2 | 最大寿命:默认2小时 |
| 5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 7 | user_id | int | 10 | 0 | N | N | 0 | 用户编号: |
表ancient_poetry_information (古诗信息)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | ancient_poetry_information_id | int | 10 | 0 | N | Y | 古诗信息ID | |
| 2 | title_of_ancient_poetry | varchar | 64 | 0 | Y | N | 古诗题目 | |
| 3 | types_of_ancient_poetry | varchar | 64 | 0 | Y | N | 古诗类型 | |
| 4 | poets_name | varchar | 64 | 0 | Y | N | 诗人姓名 | |
| 5 | poets_era | varchar | 64 | 0 | Y | N | 诗人年代 | |
| 6 | ancient_poetry_cover | varchar | 255 | 0 | Y | N | 古诗封面 | |
| 7 | content_of_ancient_poetry | text | 65535 | 0 | Y | N | 古诗内容 | |
| 8 | ancient_poetry_audio | varchar | 255 | 0 | Y | N | 古诗音频 | |
| 9 | ancient_poetry_video | varchar | 255 | 0 | Y | N | 古诗视频 | |
| 10 | details_of_ancient_poetry | longtext | 2147483647 | 0 | Y | N | 古诗详情 | |
| 11 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
| 12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
| 13 | collect_len | int | 10 | 0 | N | N | 0 | 收藏数 |
| 14 | comment_len | int | 10 | 0 | N | N | 0 | 评论数 |
| 15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | article_id | mediumint | 8 | 0 | N | Y | 文章id:[0,8388607] | |
| 2 | title | varchar | 125 | 0 | N | Y | 标题:[0,125]用于文章和html的title标签中 | |
| 3 | type | varchar | 64 | 0 | N | N | 0 | 文章分类:[0,1000]用来搜索指定类型的文章 |
| 4 | hits | int | 10 | 0 | N | N | 0 | 点击数:[0,1000000000]访问这篇文章的人次 |
| 5 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
| 6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 8 | source | varchar | 255 | 0 | Y | N | 来源:[0,255]文章的出处 | |
| 9 | url | varchar | 255 | 0 | Y | N | 来源地址:[0,255]用于跳转到发布该文章的网站 | |
| 10 | tag | varchar | 255 | 0 | Y | N | 标签:[0,255]用于标注文章所属相关内容,多个标签用空格隔开 | |
| 11 | content | longtext | 2147483647 | 0 | Y | N | 正文:文章的主体内容 | |
| 12 | img | varchar | 255 | 0 | Y | N | 封面图 | |
| 13 | description | text | 65535 | 0 | Y | N | 文章描述 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
| 2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000]决定分类显示的先后顺序 |
| 3 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
| 4 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
| 5 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
| 6 | icon | text | 65535 | 0 | Y | N | 分类图标: | |
| 7 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
| 8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
| 2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
| 3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
| 4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
| 5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
| 6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
| 7 | parent | varchar | 64 | 0 | Y | N | 父级菜单 | |
| 8 | parent_sort | int | 10 | 0 | N | N | 0 | 父级菜单排序 |
| 9 | position | varchar | 32 | 0 | Y | N | 位置: | |
| 10 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
| 11 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
| 12 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
| 13 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
| 14 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
| 15 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
| 16 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
| 17 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
| 18 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
| 19 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
| 20 | option | text | 65535 | 0 | Y | N | 配置: | |
| 21 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 22 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | code_token_id | int | 10 | 0 | N | Y | ||
| 2 | token | varchar | 255 | 0 | Y | N | ||
| 3 | code | varchar | 255 | 0 | Y | N | 验证码 | |
| 4 | expire_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 失效时间 |
| 5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
| 2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
| 3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
| 4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
| 5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
| 6 | title | varchar | 255 | 0 | Y | N | 标题: | |
| 7 | img | varchar | 255 | 0 | Y | N | 封面: | |
| 8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | comment_id | int | 10 | 0 | N | Y | 评论ID: | |
| 2 | user_id | int | 10 | 0 | N | N | 0 | 评论人ID: |
| 3 | reply_to_id | int | 10 | 0 | N | N | 0 | 回复评论ID:空为0 |
| 4 | content | longtext | 2147483647 | 0 | Y | N | 内容: | |
| 5 | nickname | varchar | 255 | 0 | Y | N | 昵称: | |
| 6 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
| 7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 9 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
| 10 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
| 11 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
表content_classification (内容分类)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | content_classification_id | int | 10 | 0 | N | Y | 内容分类ID | |
| 2 | content_category | varchar | 64 | 0 | Y | N | 内容类别 | |
| 3 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | exam_id | mediumint | 8 | 0 | N | Y | 考试id | |
| 2 | name | varchar | 32 | 0 | N | N | 考试名称:[2,32] | |
| 3 | duration | int | 10 | 0 | Y | N | 答题时长 | |
| 4 | score | double | 9 | 2 | Y | N | 总分 | |
| 5 | status | varchar | 10 | 0 | Y | N | 状态:启用、禁用 | |
| 6 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | exam_question_id | mediumint | 8 | 0 | N | Y | ||
| 2 | type | varchar | 20 | 0 | Y | N | 类型 | |
| 3 | title | varchar | 255 | 0 | Y | N | 题目 | |
| 4 | question_item | varchar | 500 | 0 | Y | N | 选项 | |
| 5 | answer | varchar | 500 | 0 | Y | N | 参考答案 | |
| 6 | score | double | 9 | 2 | Y | N | 总分 | |
| 7 | question_order | int | 10 | 0 | Y | N | 排序 | |
| 8 | exam_id | mediumint | 8 | 0 | N | N | 所属试卷 | |
| 9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | forum_id | mediumint | 8 | 0 | N | Y | 论坛id | |
| 2 | display | smallint | 5 | 0 | N | N | 100 | 排序 |
| 3 | user_id | mediumint | 8 | 0 | N | N | 0 | 用户ID |
| 4 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
| 5 | praise_len | int | 10 | 0 | Y | N | 0 | 点赞数 |
| 6 | hits | int | 10 | 0 | N | N | 0 | 访问数 |
| 7 | title | varchar | 125 | 0 | N | N | 标题 | |
| 8 | keywords | varchar | 125 | 0 | Y | N | 关键词 | |
| 9 | description | varchar | 255 | 0 | Y | N | 描述 | |
| 10 | url | varchar | 255 | 0 | Y | N | 来源地址 | |
| 11 | tag | varchar | 255 | 0 | Y | N | 标签 | |
| 12 | img | text | 65535 | 0 | Y | N | 封面图 | |
| 13 | content | longtext | 2147483647 | 0 | Y | N | 正文 | |
| 14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 16 | avatar | varchar | 255 | 0 | Y | N | 发帖人头像: | |
| 17 | type | varchar | 64 | 0 | N | N | 0 | 论坛分类:[0,1000]用来搜索指定类型的论坛帖 |
| 18 | istop | int | 10 | 0 | N | N | 0 | 是否置顶 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | type_id | smallint | 5 | 0 | N | Y | 分类ID:[0,10000] | |
| 2 | name | varchar | 16 | 0 | N | N | 分类名称:[2,16] | |
| 3 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该分类的作用 | |
| 4 | url | varchar | 255 | 0 | Y | N | 外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置 | |
| 5 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
| 6 | icon | varchar | 255 | 0 | Y | N | 分类图标: | |
| 7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | hits_id | int | 10 | 0 | N | Y | 点赞ID: | |
| 2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
| 3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
| 6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
| 7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | learning_content_id | int | 10 | 0 | N | Y | 学习内容ID | |
| 2 | content_title | varchar | 64 | 0 | Y | N | 内容标题 | |
| 3 | content_category | varchar | 64 | 0 | Y | N | 内容类别 | |
| 4 | content_difficulty | varchar | 64 | 0 | Y | N | 内容难度 | |
| 5 | content_cover | varchar | 255 | 0 | Y | N | 内容封面 | |
| 6 | learning_videos | varchar | 255 | 0 | Y | N | 学习视频 | |
| 7 | learning_content | text | 65535 | 0 | Y | N | 学习内容 | |
| 8 | content_analysis | text | 65535 | 0 | Y | N | 内容解析 | |
| 9 | content_details | longtext | 2147483647 | 0 | Y | N | 内容详情 | |
| 10 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
| 11 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
| 12 | collect_len | int | 10 | 0 | N | N | 0 | 收藏数 |
| 13 | comment_len | int | 10 | 0 | N | N | 0 | 评论数 |
| 14 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
| 15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | notice_id | mediumint | 8 | 0 | N | Y | 公告id: | |
| 2 | title | varchar | 125 | 0 | N | N | 标题: | |
| 3 | content | longtext | 2147483647 | 0 | Y | N | 正文: | |
| 4 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 5 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
表parent_child_interaction (亲子互动)
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | parent_child_interaction_id | int | 10 | 0 | N | Y | 亲子互动ID | |
| 2 | interactive_theme | varchar | 64 | 0 | Y | N | 互动主题 | |
| 3 | interaction_type | varchar | 64 | 0 | Y | N | 互动类型 | |
| 4 | interactive_form | varchar | 64 | 0 | Y | N | 互动形式 | |
| 5 | interactive_duration | varchar | 64 | 0 | Y | N | 互动时长 | |
| 6 | interactive_requirements | text | 65535 | 0 | Y | N | 互动要求 | |
| 7 | interactive_content | text | 65535 | 0 | Y | N | 互动内容 | |
| 8 | interactive_video | varchar | 255 | 0 | Y | N | 互动视频 | |
| 9 | interactive_explanation | longtext | 2147483647 | 0 | Y | N | 互动说明 | |
| 10 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
| 11 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
| 12 | collect_len | int | 10 | 0 | N | N | 0 | 收藏数 |
| 13 | comment_len | int | 10 | 0 | N | N | 0 | 评论数 |
| 14 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 15 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | praise_id | int | 10 | 0 | N | Y | 点赞ID: | |
| 2 | user_id | int | 10 | 0 | N | N | 0 | 点赞人: |
| 3 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 4 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
| 6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
| 7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
| 8 | status | bit | 1 | 0 | N | N | 1 | 点赞状态:1为点赞,0已取消 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | registered_user_id | int | 10 | 0 | N | Y | 注册用户ID | |
| 2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
| 3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
| 4 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
| 5 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
| 6 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
| 7 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | schedule_id | smallint | 5 | 0 | N | Y | 日程ID:[0,32767] | |
| 2 | content | varchar | 255 | 0 | Y | N | 日程内容 | |
| 3 | scheduled_time | datetime | 19 | 0 | Y | N | 计划时间 | |
| 4 | user_id | int | 10 | 0 | N | N | 用户id | |
| 5 | create_time | datetime | 19 | 0 | Y | N | 创建时间 | |
| 6 | update_time | datetime | 19 | 0 | Y | N | 更新时间 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | score_id | int | 10 | 0 | N | Y | 评分ID: | |
| 2 | user_id | int | 10 | 0 | N | N | 0 | 评分人: |
| 3 | nickname | varchar | 64 | 0 | Y | N | 昵称: | |
| 4 | score_num | double | 5 | 2 | N | N | 0.00 | 评分: |
| 5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 7 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
| 8 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
| 9 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
| 2 | title | varchar | 64 | 0 | Y | N | 标题: | |
| 3 | content | varchar | 255 | 0 | Y | N | 内容: | |
| 4 | url | varchar | 255 | 0 | Y | N | 链接: | |
| 5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
| 6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
| 7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | upload_id | int | 10 | 0 | N | Y | 上传ID | |
| 2 | name | varchar | 64 | 0 | Y | N | 文件名 | |
| 3 | path | varchar | 255 | 0 | Y | N | 访问路径 | |
| 4 | file | varchar | 255 | 0 | Y | N | 文件路径 | |
| 5 | display | varchar | 255 | 0 | Y | N | 显示顺序 | |
| 6 | father_id | int | 10 | 0 | Y | N | 0 | 父级ID |
| 7 | dir | varchar | 255 | 0 | Y | N | 文件夹 | |
| 8 | type | varchar | 32 | 0 | Y | N | 文件类型 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | user_id | int | 10 | 0 | N | Y | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
| 2 | state | smallint | 5 | 0 | N | N | 1 | 账户状态:[0,10](1可用|2异常|3已冻结|4已注销) |
| 3 | user_group | varchar | 32 | 0 | Y | N | 所在用户组:[0,32767]决定用户身份和权限 | |
| 4 | login_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 上次登录时间: |
| 5 | phone | varchar | 11 | 0 | Y | N | 手机号码:[0,11]用户的手机号码,用于找回密码时或登录时 | |
| 6 | phone_state | smallint | 5 | 0 | N | N | 0 | 手机认证:[0,1](0未认证|1审核中|2已认证) |
| 7 | username | varchar | 16 | 0 | N | N | 用户名:[0,16]用户登录时所用的账户名称 | |
| 8 | nickname | varchar | 16 | 0 | Y | N | 昵称:[0,16] | |
| 9 | password | varchar | 64 | 0 | N | N | 密码:[0,32]用户登录所需的密码,由6-16位数字或英文组成 | |
| 10 | | varchar | 64 | 0 | Y | N | 邮箱:[0,64]用户的邮箱,用于找回密码时或登录时 | |
| 11 | email_state | smallint | 5 | 0 | N | N | 0 | 邮箱认证:[0,1](0未认证|1审核中|2已认证) |
| 12 | avatar | varchar | 255 | 0 | Y | N | 头像地址:[0,255] | |
| 13 | open_id | varchar | 255 | 0 | Y | N | 针对获取用户信息字段 | |
| 14 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | user_answer_id | mediumint | 8 | 0 | N | Y | ||
| 2 | user_id | mediumint | 7 | 0 | N | N | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
| 3 | exam_id | mediumint | 8 | 0 | N | N | 0 | 考试id |
| 4 | score | double | 9 | 2 | Y | N | 0.00 | 分数 |
| 5 | answers | text | 65535 | 0 | Y | N | 答案 | |
| 6 | score_detail | text | 65535 | 0 | Y | N | 评分详情 | |
| 7 | objective_score | double | 9 | 2 | Y | N | 0.00 | 客观题得分 |
| 8 | subjective_score | double | 9 | 2 | Y | N | 0.00 | 主观题得分 |
| 9 | score_state | tinyint | 4 | 0 | Y | N | 0 | 评分状态 |
| 10 | nickname | varchar | 255 | 0 | Y | N | 提交人 | |
| 11 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
| 13 | comment_desc | varchar | 255 | 0 | Y | N | 评语 |
| 编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
| 1 | group_id | mediumint | 8 | 0 | N | Y | 用户组ID:[0,8388607] | |
| 2 | display | smallint | 5 | 0 | N | N | 100 | 显示顺序:[0,1000] |
| 3 | name | varchar | 16 | 0 | N | N | 名称:[0,16] | |
| 4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]描述该用户组的特点或权限范围 | |
| 5 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
| 6 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
| 7 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
| 8 | register | smallint | 5 | 0 | Y | N | 0 | 注册位置: |
| 9 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
| 10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
第五章 系统实现
5.1 注册登录模块的实现
用户可以通过简单的注册和登录流程,建立和管理个人账户。登录后可以享受个性化推荐、评论互动等功能。系统注册界面如下图所示。
图5-1 系统登录界面
5.2 注册用户功能实现
5.2.1 用户首页模块
用户进入平台后,可以在首页查看古诗推荐信息、育儿知识、网站公告等内容,以便快速找到感兴趣的内容。首页如下图所示。
图5-2 首页界面
5.2.2 互动问答模块
用户可以参与平台的互动问答,选择答题类型,包括单选、多选、填空题、判断题和主观题等。用户可以通过输入关键词进行搜索,查看特定问题。答题后,系统会自动评估并展示分数,帮助用户了解自己的答题水平。互动问答列表页面如图5-3所示。
图5-3 互动问答界面
5.2.3 学习内容模块
用户可以查看平台提供的各类学习内容,包括详细的内容标题、类别、学习难度以及相关学习视频等。用户可以通过输入标题、选择类别等多维度进行搜索,精准找到感兴趣的内容。同时,用户可以点赞、收藏和评论喜欢的内容,提升互动体验。学习内容列表界面如下图5-4所示。学习内容详情界面如下图5-5所示。
图5-4学习内容列表界面
图5-5学习内容详情界面
5.2.4 亲子互动模块
用户可以浏览亲子互动活动,了解互动主题、互动形式、时长以及互动视频等。用户可以通过关键词进行搜索,查看相关活动内容,并可以点赞、收藏、评论或回复,增加亲子互动的参与感。亲子互动列表界面如下图5-6所示。亲子互动详情界面如下图5-7所示。
图5-6亲子互动列表界面
图5-7 亲子互动详情界面
5.2.5 古诗信息模块
用户可以查看平台上各类古诗的详细信息,包括古诗的题目、类型、作者、年代等内容。同时,用户也可以收听诗歌音频或观看诗歌视频。用户可以对自己喜欢的古诗点赞、收藏、评论,增进对传统文化的理解和兴趣。古诗信息列表界面如下图5-8所示。古诗信息评论界面如下图5-9所示。
图5-8古诗信息列表界面
图5-9 古诗信息评论界面
5.2.6 社交分享模块
用户可以浏览其他用户发布的帖子,查看帖子的详细内容。用户还可以通过输入关键词进行搜索,查找感兴趣的帖子。用户可自由发布内容,与其他人分享学习和育儿经验。互动过程中,用户可点赞、收藏和评论帖子,增强社交体验。社交分享列表界面如下图5-10所示。发布社交内容界面如下图5-11所示。
图5-10社交分享界面
图5-11发布社交内容界面
5.2.7我的模块
用户点击导航栏“我的”,可以进入个人信息页面,用户可以管理自己的基本信息、收藏的内容、评论管理等。我的界面如下图5-12所示。
图5-12我的界面
5.3 管理员功能实现
5.3.1系统用户界面
管理用户账号,通过输入用户姓名、选择性别等方式进行搜索,支持查询、添加、删除等操作,确保用户数据的准确性和完整性,界面如下图5-13所示。
图5-13 系统用户界面图
5.4.2内容分类界面
管理员查看各类学习内容分类列表详情,通过输入内容类别进行搜索,支持查询、删除等操作。界面如下图所示。
图5-14内容分类管理界面图
管理员可以查看所有学习内容的详细信息及用户评论。通过输入内容标题、选择内容类别等方式进行搜索,管理员可以高效地查询到特定学习内容,并对页面内容进行删除等操作。此外,管理员还可以添加新的学习内容,包括输入内容标题、选择内容类别、难度等级、上传内容封面、学习视频等,确保平台提供的学习资源丰富且符合教育标准。学习内容管理界面如下图所示。
图5-15 学习内容管理界面图
图5-16 添加学习内容界面图
5.4.4亲子互动管理界面
管理员在亲子互动管理模块中,可以查看所有亲子互动活动的列表及详细信息,包括用户的评论。通过输入互动主题或互动类型进行搜索,管理员能够快速定位到特定互动内容,并对其进行查询或删除。管理员还可以添加新的互动活动,通过输入互动主题、互动类型、时长要求、互动内容、上传互动视频等信息进行提交添加。同时,管理员可以查看互动视频,确保互动活动符合预期效果,界面如下图所示。
图5-17 亲子互动管理界面图
图5-18 添加亲子互动界面图
在轮播图管理功能中,管理员可以查看所有轮播图的详细信息,并通过输入标题进行搜索,快速查询到特定的轮播图。管理员可以对页面上的轮播图进行删除或添加操作,保证首页展示的内容及时更新。系统管理界面如下图所示。
图5-19系统管理界面图
互动问答管理模块允许管理员查看用户的互动问答详情,进行题库管理、答题和评分操作。互动问答界面如下图所示。
图5-20互动问答界面图
第六章 系统的测试
6.1测试目的
在对该系统进行完详细设计和编码之后,就要对学龄前儿童国学教育APP的程序进行测试,检测程序是否运行无误,反复进行测试和修改,使之最后成为完整的软件,满足用户的需求,实现预期的功能。系统测试的目的在于确保软件正常运作,并实现其应有的功能,促进行中出现的错误和逻辑问题。系统测试不但可以找见程序运行中的系统错误,还可以找见程序运行的需要改进的地方,并去协助改良程序运行使其获得最高幅度的完备。
6.2功能测试
通过对系统中所含的主要实体对象及其功能操作进行测试用例设计。以下是详细的测试:
表6-1用户注册登录测试表
用户注册登录测试用例:
| 用例说明 | 测试目的 | 测试步骤 | 预期结果 | 输出结果 | 通过情况 |
| 用户注册、登录 | 测试用户正确注册、登录 | 1.在首页界面注册一个新用户,按规定输入合理的注册信息,提交。 2.用户在登录界面输入账户密码登录 | 用户注册成功,登录成功 | 结果输出符合预期 | 通过 |
表6-2互动问答测试表
互动问答用例:
| 用例说明 | 测试目的 | 测试步骤 | 预期结果 | 输出结果 | 通过情况 |
| 互动问答 | 测试用户互动问答功能 | 1、在首页点击互动问答菜单按钮进入问答信息列表; 2、点击某一互动问答进入详情页,进行答题,点击提交 | 用户答题完成,生成分数信息可查看 | 结果输出符合预期 | 通过 |
表6-3评论测试表
评论测试用例:
| 用例说明 | 测试目的 | 测试步骤 | 预期结果 | 输出结果 | 通过情况 |
| 评论 | 测试用户评论功能 | 1、在首页点击学习内容菜单按钮进入学习内容列表; 2、点击某一学习内容进入详情页,点击评论,输入评论内容后,点击提交 | 生成新的评论信息 | 结果输出符合预期 | 通过 |
表6-4古诗信息添加测试表
管理员古诗信息添加测试用例:
| 用例说明 | 测试目的 | 测试步骤 | 预期结果 | 输出结果 | 通过情况 |
| 古诗信息添加测试 | 测试管理员添加古诗信息功能 | 1、管理员点击古诗信息添加; 2、输入相关信息点击提交 | 古诗信息添加成功 | 结果输出符合预期 | 通过 |
表6-5公告信息删除测试表
公告信息删除测试用例:
| 用例说明 | 测试目的 | 测试步骤 | 预期结果 | 输出结果 | 通过情况 |
| 公告信息删除测试 | 测试公告信息删除功能 | 1.管理员点击公告信息管理; 2.选择一个公告信息点击删除并确认删除 | 公告信息删除成功,前端不在展示该公告信息 | 结果输出符合预期 | 通过 |
6.3性能测试
- 兼容性测试
表6-6 兼容性测试用例
| 用例编号 | 测试类型 | 测试目标 | 操作过程 | 预期结果 |
| 兼容性_01 | 设备兼容性 | 测试系统在不同设备上的表现 | 在多种设备上访问系统并记录表现 | 系统在各种设备上都能正常加载和显示页面 |
| 兼容性_02 | 浏览器兼容性 | 测试系统在不同浏览器上的表现 | 在多种浏览器中访问系统并记录表现 | 系统在各种主流浏览器上都能正常加载和显示页面 |
| 兼容性_03 | 分辨率兼容性 | 测试系统在不同分辨率下的显示效果 | 在不同分辨率的设备上访问系统并记录表现 | 系统在各种分辨率下都能适应并正常显示内容 |
| 兼容性_04 | 操作系统兼容性 | 测试系统在不同操作系统上的运行情况 | 在不同操作系统上访问系统并记录表现 | 系统能够在常用操作系统上正常运行和显示 |
- 性能测试
表6-7 性能测试用例
| 用例编号 | 测试类型 | 测试目标 | 操作过程 | 预期结果 |
| 性能_01 | 负载测试 | 测试系统在正常负载下的性能 | 逐步增加用户数来模拟不同的负载情况 | 系统能够稳定处理并响应不同数量的用户请求 |
| 性能_02 | 压力测试 | 测试系统在极端负载下的性能 | 以超过系统承受极限的用户数来测试系统 | 系统能够在高负载情况下仍然保持正常运行 |
| 性能_03 | 并发测试 | 测试系统能同时处理多少并发用户请求 | 同时发送多个并发用户请求来测试系统性能 | 系统能够有效地处理多个并发请求 |
| 性能_04 | 数据量测试 | 测试系统在大数据量下的性能 | 向系统添加大量数据并测试系统响应时间 | 系统能够在大数据量情况下保持较快的响应时间 |
6.4测试结果
全部测试用例都已通过,且不存在漏洞,实现了本论文开始时所作要求和期望。本系统运行稳定,使用流畅,可以满足客户需求。试运行后进行系统评估,可以认为该系统达到预定的目标要求,可以满足用户的需求,也满足了系统开发前所作目标。系统在经过大量重复测试后运行十分稳定,安全实用,功能模块已经达到预定目标所需。在规定的时间内实现系统的大部分功能,且满足要求,节省开发成本,有助于提高科学管理水平,符合本人经济情况。
简而言之,经过严格的测试,可以发现该系统的功能和性能非常出色,它的精度、可靠性、稳健性都达到了极高的水平,而且它还支持快速、精细的点击操作,使用者的使用感受更加良好。此外,它还支持各种主流浏览器,满足不同的使用要求。
结 论
学龄前儿童国学教育APP结合了SpringBoot框架与安卓开发技术,提供了一个高效且易用的教育平台。通过SpringBoot的后台管理系统,APP能够高效地处理和管理大量用户信息、学习内容及互动功能,为家长和孩子们提供了丰富的国学学习资源。同时,安卓APP的开发保证了用户在各种安卓设备上的流畅体验,满足了不同操作系统和设备的使用需求。系统架构的设计使得平台具备了良好的扩展性和灵活性,可以根据用户需求和市场变化快速进行调整和优化。
APP中的各项管理功能,如用户管理、内容管理、互动管理等,确保了平台的有序运作和教育资源的精准匹配。通过高效的管理系统,管理员能够方便地维护和更新教学内容,管理亲子互动活动,提升用户的参与感与学习兴趣。此外,平台的数据安全性和稳定性得到了保障,使得家长和孩子能够在一个安全、可靠的环境中进行学习和交流。整个系统的设计充分考虑到学龄前儿童的需求,通过简单直观的操作界面和互动方式,帮助孩子们在轻松愉快的氛围中学习国学经典,培养文化素养。
综合来看,学龄前儿童国学教育APP凭借其先进的技术架构、全面的功能模块和友好的用户体验,为儿童国学教育提供了一个现代化的数字平台,推动了传统文化在新时代的传承和普及。通过不断优化平台功能和内容,APP能够满足广大家长和孩子们的教育需求,提升教育效果,并为未来的教育发展奠定坚实的基础。
- 庞敏. MySQL数据库的数据安全应用设计技术研究 [J]. 数字通信世界, 2024, (09): 25-27.
- 张丹,彭邹念,张倩. 郑州老旧社区学龄前儿童教育共享策略分析 [J]. 住宅与房地产, 2024, (10): 90-92.
- 莫儒然. 基于心流理论的学龄前儿童美术教育设计探究 [J]. 新智慧, 2024, (02): 103-105.
- 陈钱,兰全祥. Java Web中文件上传方法的研究与分析 [J]. 工业控制计算机, 2024, 37 (11): 72-74+77.
- 王永强. 学龄前儿童教育类APP交互设计原则探究 [J]. 互联网周刊, 2023, (07): 75-77.
- 李娜,韩海燕. 基于ARCS的蒙古族学龄前儿童教育APP界面视觉设计 [J]. 包装工程, 2023, 44 (10): 202-212.
- 张思聪. 基于认知心理学的学龄前儿童设计普及教育途径与策略研究[D]. 中国矿业大学, 2022.
- 陈蓓蕾,洪年松. 基于SpringBoot的数据库接口设计 [J]. 信息与电脑(理论版), 2023, 35 (16): 181-183.
- 王晋. 基于心流理论的学龄儿童国学教育移动应用设计研究[D]. 江苏大学, 2022.
- 任彦虎. 基于劝导理论的学龄前儿童行为习惯养成游戏设计研究[D]. 哈尔滨工业大学, 2022.
- 车菲蓉. 基于启发式教育的学龄前儿童美术教具设计研究[D]. 景德镇陶瓷大学, 2022.
- 周曦,黄心渊. 学龄前儿童教育游戏角色的交互设计 [J]. 包装工程, 2022, 43 (06): 243-251.
- 刘家欣. 学龄前儿童教育空间情感化设计发展研究 [J]. 中国建筑装饰装修, 2022, (02): 129-130.
- 李敏敏. 发展适宜性视角下学龄前儿童安全教育交互设计研究[D]. 桂林电子科技大学, 2021.
- 顾羽. 儿童国学类图书出版的分众传播研究[D]. 苏州大学, 2021.
- 赵影. 学龄前儿童教育绘本设计研究[D]. 苏州科技大学, 2021.
- 范雅静. 基于情境学习的学龄前儿童思维启蒙教育应用设计研究[D]. 华南理工大学, 2021.
- Salunke V S ,Ouda A . A Performance Benchmark for the PostgreSQL and MySQL Databases [J]. Future Internet, 2024, 16 (10): 382-382.
- Wang Y ,Xue W ,Huang Q , et al. Exploring ChatGPT's Potential in Java API Method Recommendation: An Empirical Study [J]. Journal of Software: Evolution and Process, 2025, 37 (1): e2765-e2765.
- Reis J ,Mota A . Improving Android app exploratory testing with UI test cases using code change analysis [J]. Innovations in Systems and Software Engineering, 2024, (prepublish): 1-19.
致 谢
在本论文的研究与撰写过程中,我得到了许多人的支持与帮助。在此,我谨向所有关心和支持我的人表示诚挚的感谢。
首先,我要感谢我的指导老师,他在整个研究过程中给予了我悉心的指导和无私的支持。他的专业知识和严谨态度对我有着深远的影响,使我在研究中受益匪浅。
其次,我要感谢我的家人,他们在我攻读学位期间给予了我无条件的理解与支持。在我遇到困难和挑战时,他们的鼓励让我倍感温暖,激励我不断前行。
同时,感谢所有参与问卷调查和用户测试的社区居民,你们的反馈和建议对本系统的改进和完善起到了重要作用。希望本研究的成果能够为大家的生活带来便利,并为社区的二手商品采购提供更好的解决方案。
再次感谢所有关心和支持我的人,是你们的帮助让我顺利完成了这项研究。
934

被折叠的 条评论
为什么被折叠?



