SSM网络课程系统
摘 要
本论文主要论述了如何使用SSM框架开发一个网络课程系统,将严格按照软件开发流程进行各个阶段的工作,采用B/S架构Java技术,面向对象编程思想进行项目开发。在引言中,将论述网络课程系统的当前背景以及系统开发的目的,后续章节将严格按照软件开发流程,对系统进行各个阶段分析设计。
网络课程系统的主要使用者分为管理员、教师用户和学生用户,实现功能包括:个人资料,公告管理(轮播图,公告消息),用户管理(管理员,教师,学生),信息管理(交流论坛,论坛分类,测试练习),课程申请,学习资源,素材库,教学课程,记事本,学生档案,学生成绩,学生作品,作业信息,作业批改,评价信息,教师社区,帮助咨询等功能。
本系统的使用可以实现网络课程管理的信息化,可以方便管理员,教师用户进行更加方便快捷的管理,可以提高学生用户的学习效率,以及教师的教学管理效率。
关键词:网络课程系统,SSM,Mysql
SSM Network Course System
ABSTRACT
This paper mainly discusses how to develop a network course system using the SSM framework, strictly following the software development process for each stage of work, using B/S architecture Java technology and object-oriented programming ideas for project development. In the introduction, the current background of the online course system and the purpose of system development will be discussed. Subsequent chapters will strictly follow the software development process to analyze and design the system at each stage.
The main users of the online course system are divided into administrators, teacher users, and student users. The implementation functions include: personal information, announcement management (broadcast images, announcement messages), user management (administrators, teachers, students), information management (communication forums, forum classification, testing exercises), course applications, learning resources, material libraries, teaching courses, notebooks, student files, student grades, and student works, Functions such as homework information, homework correction, evaluation information, teacher community, and help consultation.
The use of this system can achieve the informatization of online course management, which can facilitate administrators and teacher users to manage more conveniently and quickly. It can improve the learning efficiency of student users and the teaching management efficiency of teachers.
Key words: online course system, SSM, MySQL
目录
第1章 绪论
1.1背景及意义
网络教学不同于以往的传统学习方式,能满足学生个性化学习的需求,提供学生更加自由的学习空间,学生可以根据自己选择的方式去学习,不断提高学习效率从而将被动的学习变成主动的接受。特别是在特殊时期,网络教学发挥发挥着重要的作用。通过网络教学为学生提供丰富的学习资源,和书籍无法比拟的信息环境。由于知识本身是需要即时更新的,掌握知识的人的知识也是需要即时更新的,从而使学习成为一个贯穿终身的持续性的活动。在当今社会,为适应市场经济的运行要求,人们必须适应资源社会化、配置市场化和使用价值化的要求,"创新人才是资本"成为一种基本的观念,新知识、新技术在当今社会环境中扩散速度很快,快速的扩散必然导致对知识、技术的更新要求也加快,从而又促使新的东西产生。由于知识的更新速度的加快、半衰期的缩短,所以必须不断的为自己补充新的知识,接受新的信息,才能赶上社会的快速发展,西方学者认为,现代化的教育必须训练人们的创造力,能够适应迅速变化的工作环境,高校、教育机构将根据社会的需要、学生的要求和本地的实际情况提供灵活多样的课程。网络课程系统实现了这方面的要求。
1.2 开发现状
虽然我国现在大力的支持网络教学的建设,但是客观的说我国的网络教学建设还是处于起始阶段,还缺乏一些理论指导,以及统一的调配问题,形成现在的全而不精的局面。我国的网络教学建设与国外相比还是有很大差距的。
国家已经为高校信息化环境建设和网络教学建设投入了巨额的经费,并取得了显著的成效。现有的网络教学及其他数字学习资源,和高校信息化环境建设的成果为本课题的研究提供了良好的物质基础。但目前优秀的教学资源的共享和应用还不够充分,网络教学资源对教学质量和办学效益提高的作用离人们的期望还有较大的距离。网络教学共享服务和可持续发展,不仅是教育信息化进程中资源建设的重要内容,而且其共建共享模式可以为国家信息化发展、构建基于信息化环境的终身教育体系、建设学习型社会提供参考。
1.3 研究的内容
目前许多人仍将传统的纸质工具作为信息管理的主要工具,而网络技术的应用只是起到辅助作用。在对网络工具的认知程度上,较为传统的office软件等仍是人们使用的主要工具,而相对全面且专业的网络课程系统仍因存在各种问题没有得到充分应用。本选题则旨在通过标签分类管理等方式,实现个人资料,公告管理(轮播图,公告消息),用户管理(管理员,教师,学生),信息管理(交流论坛,论坛分类,测试练习),课程申请,学习资源,素材库,教学课程,记事本,学生档案,学生成绩,学生作品,作业信息,作业批改,评价信息,教师社区,帮助咨询等系统功能,从而实现提高学生的学习效率,教师教学效率的目标。
第2章 相关技术
2.1 开发技术
本系统前端部分基于MVVM模式进行开发,采用B/S模式,后端部分基于Java的SSM框架进行开发。
前端部分:前端框架采用了比较流行的渐进式JavaScript框架Vue.js。使用Vue-Router和Vuex实现动态路由和全局状态管理,Ajax实现前后端通信,Element UI组件库使页面快速成型,项目前端通过栅格布局实现响应式,可适应PC端、平板端、手机端等不同屏幕大小尺寸的完美布局展示。
后端部分:采用SSM作为开发框架,同时集成MyBatis、Redis等相关技术。
2.2 SSM框架介绍
SSM(Spring+SpringMVC+MyBatis)框架集由Spring、MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容)。常作为数据源较简单的web项目的框架。
1.6.1 Spring
Spring就像是整个项目中装配bean的大工厂,在配置文件中可以指定使用特定的参数去调用实体类的构造方法来实例化对象。也可以称之为项目中的粘合剂。
Spring的核心思想是IoC(控制反转),即不再需要程序员去显式地`new`一个对象,而是让Spring框架帮你来完成这一切。
1.6.2 SpringMVC
SpringMVC在项目中拦截用户请求,它的核心Servlet即DispatcherServlet承担中介或是前台这样的职责,将用户请求通过HandlerMapping去匹配Controller,Controller就是具体对应请求所执行的操作。SpringMVC相当于SSH框架中struts。
1.6.3 mybatis
mybatis是对jdbc的封装,它让数据库底层操作变的透明。mybatis的操作都是围绕一个sqlSessionFactory实例展开的。mybatis通过配置文件关联到各实体类的Mapper文件,Mapper文件中配置了每个类对数据库所需进行的sql语句映射。在每次与数据库交互时,通过sqlSessionFactory拿到一个sqlSession,再执行sql命令。
页面发送请求给控制器,控制器调用业务层处理逻辑,逻辑层向持久层发送请求,持久层与数据库交互,后将结果返回给业务层,业务层将处理逻辑发送给控制器,控制器再调用视图展现数据。
2.3 MVVM模式
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑。微软的WPF带来了新的技术体验,如Silverlight、音频、视频、3D、动画……,这导致了软件UI层更加细节化、可定制化。同时,在技术层面,WPF也带来了 诸如Binding、Dependency Property、Routed Events、Command、DataTemplate、ControlTemplate等新特性。MVVM(Model-View-ViewModel)框架的由来便是MVP(Model-View-Presenter)模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性糅合进去,以应对用户日益复杂的需求变化。
2.4 B/S结构
B/S(Browser/Server)比前身架构更为省事的架构。它借助Web server完成数据的传递交流。只需要下载浏览器作为用户端,那么工作就达到“瘦身”效果, 不需要考虑不停装软件的问题[9]。
2.5 MySQL数据库
Mysql的语言是非结构化的,用户可以在数据上进行工作。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。并且因为Mysql的语言和结构比较简单,但是功能和存储信息量很强大,所以得到了普遍的应用。
Mysql数据库在编程过程中的作用是很广泛的,为用户进行数据查询带来了方便。Mysql数据库的应用因其灵活性强,功能强大,所以在实现某功能时只需要一小段代码,而不像其他程序需要编写大段代码。总体来说,Mysql数据库的语言相对要简洁很多。
数据流程分析主要就是数据存储的储藏室,它是在计算机上进行的,而不是现实中的储藏室。数据的存放是按固定格式,而不是无序的,其定义就是:长期有固定格式,可以共享的存储在计算机存储器上。数据库管理主要是数据存储、修改和增加以及数据表的建立。为了保证系统数据的正常运行,一些有能力的处理者可以进行管理而不需要专业的人来处理。数据表的建立,可以对数据表中的数据进行调整,数据的重新组合及重新构造,保证数据的安全性。介于数据库的功能强大等特点,本系统的开发主要应用了Mysql进行对数据的管理。
2.6 Vue.js 主要功能
Vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件和Vue生态系统支持的库开发的复杂单页应用。
Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。
Vue.js 自身不是一个全能框架——它只聚焦于视图层。因此它非常容易学习,非常容易与其它库或已有项目整合。另一方面,在与相关工具和支持库一起使用时,Vue.js 也能驱动复杂的单页应用。
第3章 系统分析
3.1 需求分析
网络课程系统主要是为了实现学生学习效率提高,教师教学效率的目标,更好存储所有数据信息及快速方便的检索功能,对系统的各个模块是通过许多今天的发达系统做出合理的分析来确定考虑用户的可操作性,遵循开发的系统优化的原则,经过全面的调查和研究。
任何一个项目在开发研究前,都需要对研发系统本身的需求做一个认真的分析,市场的调研是不可忽视的,从实际场景中确定使用用户的功能需求,从而明确目标,对整个系统的开发有一个更加准确的定位。在这个章节,需要对系统的性能分析,业务流程分析,和数据等进行分析,网络课程系统的整体界面简单,功能完善。
需求的可行性是分析和讨论发达的系统能达到什么样的要求。开发的系统或网站是否符合之前的要求。只有在预先评估系统的开发中,才能在系统开发和实施之前完成需求。系统在开发和运用过程中,在技术可行性、操作可行性、经济可行性和法律可行性这几点展开的详细说明,证明了这几点是可行的。
系统所要实现的功能分析,对于现在网络方便的管理,系统要实现用户可以直接在平台上进行查看所有数据信息,根据需求可以进行在线添加,删除或修改网络课程系统信息,这样既能节省时间,不用再像传统的方式耽误时间,很难满足用户的各种需求。所以网络课程系统的开发不仅能满足用户的需求,还能减少原有不必要的工作量,大大提高了管理员的工作效率。
3.2 系统可行性分析
3.2.1技术可行性
本系统在Windows操作系统中进行开发,并且目前PC机的性能已经可以胜任普通网站的web服务器。系统开发所使用的技术也都是自身所具有的,也是当下广泛应用的技术之一。
系统的开发环境和配置都是可以自行安装的,系统使用SSM开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得网站运行更具有稳定性和安全性,从而完成实现网站的开发。
(1)硬件可行性分析
系统管理及信息分析的设计对于所使用的计算机没有什么硬性的要求,计算机只要可以正常的使用进行代码的编写及页面设计就可行,主要是对于服务器有些要求,对于平台搭建完成要上传的服务器是有一定的要求的,服务器必须选择安全性比较高的,然后就是在打开网站必须顺畅,不能停顿太长时间;性价比高;安全性高。
(2)软件可行性分析
开发整个系统使用的是云计算,流量的可扩展性和基于流量的智能调整云计算的优点就是流量的可扩展性和基于流量的智能调整,保障系统的安全和数据信息的及时备份。
因此,我们从两个方面进行了可行性研究,可以看出系统的开发没有问题。
3.2.2经济可行性
在网络课程系统开发之前所做的市场调研及其他相关的管理系统,都是没有任何费用的,都是通过开发者自己的努力,所有工作都是自己亲力亲为,在碰到自己比较难以解决的问题,大多是通过同学和指导老师的帮助进行相关信息的解决,所以对于网络课程系统的开发在经济上是完全可行的,没有任何费用支出的。
使用比较成熟的技术,系统是基于SSM的开发,采用Mysql数据库。所以系统在开发人力、财力要求不高,具有经济可行性。
3.2.3操作可行性
可操作性主要是对网络课程系统设计完成后,用户的使用体验度,以及管理员可以通过系统随时管理相关的数据信息,并且对于管理员,学生用户,教师用户三种角色,都可以简单明了的进入到自己的系统界面,通过界面导航菜单可以简单明了地操作功能模块,方便用户信息的操作需求和管理员管理数据信息,对于系统的操作,不需要专业人员都可以直接进行功能模块的操作管理,所以在系统的可操作性是完全可以的。本系统的操作过程使用的也是界面窗口进行登录,所以操作人员只要会简单的电脑操作就完全可以的。
3.3 项目设计目标与原则
1、关于网络课程系统的基本要求
(1)功能要求:可以管理个人资料,公告管理(轮播图,公告消息),用户管理(管理员,教师,学生),信息管理(交流论坛,论坛分类,测试练习),课程申请,学习资源,素材库,教学课程,记事本,学生档案,学生成绩,学生作品,作业信息,作业批改,评价信息,教师社区,帮助咨询等功能模块。
(2)性能:在不同操作系统上均能无差错实现在不同类型的用户登入相应界面后能不出差错、方便地进行预期操作。
(3)安全与保密要求:用户都必须通过管理员审核才能进入系统。
(4)环境要求:支持Windows系列、Vista系统等多种操作系统使用。
2、开发目标
网络课程系统的主要开发目标如下:
(1)实现管理系统信息关系的系统化、规范化和自动化;
(2)减少维护人员的工作量以及实现用户对信息的控制和管理;
(3)方便查询信息及管理信息等;
(4)通过网络操作,提高改善处理问题和操作人学生作的效率;
(5)考虑到用户多样性特点,要求界面和操作简便易懂。
3、设计原则
本系统采用SSM技术,Mysql数据库开发,充分保证了系统稳定性、完整性。
网络课程系统的设计与实现的设计思想如下:
- 操作简单方便、系统界面安全良、简单明了的页面布局、方便查询智能高校办公设备网上报修管理相关信息。
2、即时可见:对网络课程系统信息的查询、处理将立马可以查询到,从而实现“即时发布、即时见效”的系统功能。
3、功能的完善性:可以管理个人资料,公告管理(轮播图,公告消息),用户管理(管理员,教师,学生),信息管理(交流论坛,论坛分类,测试练习),课程申请,学习资源,素材库,教学课程,记事本,学生档案,学生成绩,学生作品,作业信息,作业批改,评价信息,教师社区,帮助咨询等模块的修改维护操作。
3.4系统流程分析
3.4.1操作流程
图3-1登录流程图
3.4.2添加信息流程
添加信息流程图,如图所示:
图3-2添加信息流程图
3.4.3删除信息流程
删除信息流程图,如图所示:
图3-3删除信息流程图
第4章 系统设计
4.1 系统体系结构
图4-1 系统结构
登录系统结构图,如图4-2所示:
图4-2 登录结构图
系统功能结构图,如图4-3所示。
图4-3 系统功能结构图
4.2开发流程设计
系统流程的分析是通过调查系统所涉及问题的识别、可行性、可操作性、系统分析处理能力等具体环节来调节、整理系统的设计方案以确保系统能达到理想的状态。这些操作都要从注册、登录处着眼进行一系列的流程测试保证数据库的完整,从而把控系统所涉及信息管理的安全、保证信息输入、输出正常转换。然后,通过实际操作完成流程图的绘制工作。
网络课程系统的开发对管理模块和系统使用的数据库进行分析,编写代码,系统测试,如图4-4所示。
图4-4开发系统流程图
4.3 数据库设计原则
学习编程,我们都知道数据库设计是基于需要设计的系统功能,我们需要建立一个数据库关系模型,用于存储数据信息,这样当我们在程序中时,就没有必要为程序页面添加数据,从而提高系统的效率。数据库存储了很多信息,可以说是信息管理系统的核心和基础,数据库还为系统提供了添加、删除、修改和检查等操作模块,使系统能够快速找到自己想要的信息,而不是在程序代码中找到。数据库中信息表的每个部分根据一定的关系精确地组合,排列和组合成数据表。
通过网络课程系统的功能进行规划分成几个实体信息,实体信息将通过ER图进行说明,本系统的主要实体图如下:
(1) 用户信息用例图,如图4-3所示:
图4-3 用户用例图
图4-3 管理员用例图
图4-4系统ER图
4.4 数据表
将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。
表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 | 用户编号: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | 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: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | course_application_id | int | 10 | 0 | N | Y | 课程申请ID | |
2 | course_name | varchar | 64 | 0 | Y | N | 课程名称 | |
3 | type | varchar | 64 | 0 | Y | N | 类型 | |
4 | class_name | varchar | 64 | 0 | Y | N | 班级名称 | |
5 | class_hours | varchar | 64 | 0 | Y | N | 上课时间 | |
6 | total_class_hours | varchar | 64 | 0 | Y | N | 总课时 | |
7 | teacher_id | int | 10 | 0 | Y | N | 0 | 教师编号 |
8 | teacher_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
9 | class_hour_plan | varchar | 64 | 0 | Y | N | 课时计划 | |
10 | content_introduction | text | 65535 | 0 | Y | N | 内容介绍 | |
11 | learning_method | text | 65535 | 0 | Y | N | 学习方法 | |
12 | assessment_requirements | text | 65535 | 0 | Y | N | 考核要求 | |
13 | performance_evaluation | text | 65535 | 0 | Y | N | 成绩评价 | |
14 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
15 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
16 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
17 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表evaluation_information (评价信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | evaluation_information_id | int | 10 | 0 | N | Y | 评价信息ID | |
2 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
3 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
4 | teacher_no | int | 10 | 0 | Y | N | 0 | 教师编号 |
5 | teacher_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
6 | evaluation_time | date | 10 | 0 | Y | N | 评价时间 | |
7 | comprehensive_evaluation | varchar | 64 | 0 | Y | N | 综合评价 | |
8 | evaluation_content | text | 65535 | 0 | Y | N | 评价内容 | |
9 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | 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 | 7 | 0 | Y | 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]用来搜索指定类型的论坛帖 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | help_consultation_id | int | 10 | 0 | N | Y | 帮助咨询ID | |
2 | title | varchar | 64 | 0 | Y | N | 标题 | |
3 | teacher_no | int | 10 | 0 | Y | N | 0 | 教师编号 |
4 | teacher_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
5 | release_time | date | 10 | 0 | Y | N | 发布时间 | |
6 | detailed_description | text | 65535 | 0 | Y | N | 详情描述 | |
7 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
8 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
9 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | 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 | homework_correction_id | int | 10 | 0 | N | Y | 作业批改ID | |
2 | section_number | varchar | 64 | 0 | Y | N | 章节编号 | |
3 | title | varchar | 64 | 0 | Y | N | 标题 | |
4 | chapter_introduction | varchar | 64 | 0 | Y | N | 章节简介 | |
5 | course_type | varchar | 64 | 0 | Y | N | 课程类型 | |
6 | courses | varchar | 64 | 0 | Y | N | 所属课程 | |
7 | teacher_no | int | 10 | 0 | Y | N | 0 | 教师编号 |
8 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
9 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
10 | correction_time | date | 10 | 0 | Y | N | 批改时间 | |
11 | correction_details | text | 65535 | 0 | Y | N | 批改详情 | |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | job_information_id | int | 10 | 0 | N | Y | 作业信息ID | |
2 | section_number | varchar | 64 | 0 | Y | N | 章节编号 | |
3 | title | varchar | 64 | 0 | Y | N | 标题 | |
4 | chapter_introduction | varchar | 64 | 0 | Y | N | 章节简介 | |
5 | course_type | varchar | 64 | 0 | Y | N | 课程类型 | |
6 | courses | varchar | 64 | 0 | Y | N | 所属课程 | |
7 | teacher_no | int | 10 | 0 | Y | N | 0 | 教师编号 |
8 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
9 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
10 | submission_time | date | 10 | 0 | Y | N | 提交时间 | |
11 | job_attachments | varchar | 255 | 0 | Y | N | 作业附件 | |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | learning_resource_id | int | 10 | 0 | N | Y | 学习资源ID | |
2 | chapter_name | varchar | 64 | 0 | Y | N | 章节名称 | |
3 | topic_name | varchar | 64 | 0 | Y | N | 专题名称 | |
4 | cover | varchar | 255 | 0 | Y | N | 封面 | |
5 | courses | varchar | 64 | 0 | Y | N | 所属课程 | |
6 | resource_type | varchar | 64 | 0 | Y | N | 资源类型 | |
7 | publisher | int | 10 | 0 | Y | N | 0 | 发布人 |
8 | release_time | date | 10 | 0 | Y | N | 发布时间 | |
9 | related_resources | varchar | 255 | 0 | Y | N | 相关资源 | |
10 | content_introduction | text | 65535 | 0 | Y | N | 内容介绍 | |
11 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
12 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
13 | recommend | 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 | material_library_id | int | 10 | 0 | N | Y | 素材库ID | |
2 | material_name | varchar | 64 | 0 | Y | N | 素材名称 | |
3 | material_type | varchar | 64 | 0 | Y | N | 素材类型 | |
4 | material_function | varchar | 64 | 0 | Y | N | 素材功能 | |
5 | material_upload | varchar | 255 | 0 | Y | N | 素材上传 | |
6 | related_introduction | text | 65535 | 0 | Y | N | 相关介绍 | |
7 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | notepad_id | int | 10 | 0 | N | Y | 记事本ID | |
2 | title | varchar | 64 | 0 | Y | N | 标题 | |
3 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
4 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
5 | recording_time | date | 10 | 0 | Y | N | 记录时间 | |
6 | record_content | text | 65535 | 0 | Y | N | 记录内容 | |
7 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | 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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | self_evaluation_id | int | 10 | 0 | N | Y | 自我评价ID | |
2 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
3 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
4 | title | varchar | 64 | 0 | Y | N | 标题 | |
5 | evaluation_time | date | 10 | 0 | Y | N | 评价时间 | |
6 | evaluation_content | text | 65535 | 0 | Y | N | 评价内容 | |
7 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | student_id | int | 10 | 0 | N | Y | 学生ID | |
2 | student_no | varchar | 64 | 0 | N | N | 学生编号 | |
3 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
4 | gender | varchar | 64 | 0 | Y | N | 性别 | |
5 | examine_state | varchar | 16 | 0 | N | N | 已通过 | 审核状态 |
6 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_achievements_id | int | 10 | 0 | N | Y | 学生成绩ID | |
2 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
3 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
4 | teacher_no | int | 10 | 0 | Y | N | 0 | 教师编号 |
5 | teacher_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
6 | title | varchar | 64 | 0 | Y | N | 标题 | |
7 | course_name | varchar | 64 | 0 | Y | N | 课程名称 | |
8 | release_time | date | 10 | 0 | Y | N | 发布时间 | |
9 | academic_record | int | 10 | 0 | Y | N | 0 | 学习成绩 |
10 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
11 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
12 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_files_id | int | 10 | 0 | N | Y | 学生档案ID | |
2 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
3 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
4 | gender | varchar | 64 | 0 | Y | N | 性别 | |
5 | age | int | 10 | 0 | Y | N | 0 | 年龄 |
6 | contact_number | varchar | 64 | 0 | Y | N | 联系电话 | |
7 | residential_address | varchar | 64 | 0 | Y | N | 居住地址 | |
8 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | student_works_id | int | 10 | 0 | N | Y | 学生作品ID | |
2 | name_of_work | varchar | 64 | 0 | Y | N | 作品名称 | |
3 | cover | varchar | 255 | 0 | Y | N | 封面 | |
4 | type_of_work | varchar | 64 | 0 | Y | N | 作品类型 | |
5 | release_time | date | 10 | 0 | Y | N | 发布时间 | |
6 | student_no | int | 10 | 0 | Y | N | 0 | 学生编号 |
7 | full_name | varchar | 64 | 0 | Y | N | 姓名 | |
8 | related_works | varchar | 255 | 0 | Y | N | 相关作品 | |
9 | introduction | longtext | 2147483647 | 0 | Y | N | 作品介绍 | |
10 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
11 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
14 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | teacher_id | int | 10 | 0 | N | Y | 教师ID | |
2 | teacher_no | varchar | 64 | 0 | N | N | 教师编号 | |
3 | teacher_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
4 | gender | varchar | 64 | 0 | Y | N | 性别 | |
5 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
6 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
7 | user_id | int | 10 | 0 | N | N | 0 | 用户ID |
8 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | teacher_community_id | int | 10 | 0 | N | Y | 教师社区ID | |
2 | title | varchar | 64 | 0 | Y | N | 标题 | |
3 | cover | varchar | 255 | 0 | Y | N | 封面 | |
4 | type | varchar | 64 | 0 | Y | N | 类型 | |
5 | teacher_no | int | 10 | 0 | Y | N | 0 | 教师编号 |
6 | teacher_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
7 | release_time | date | 10 | 0 | Y | N | 发布时间 | |
8 | content_details | text | 65535 | 0 | Y | N | 内容详情 | |
9 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
10 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
11 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
12 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
13 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | teaching_activities_id | int | 10 | 0 | N | Y | 教学课程ID | |
2 | section_number | varchar | 64 | 0 | Y | N | 章节编号 | |
3 | title | varchar | 64 | 0 | Y | N | 标题 | |
4 | cover | varchar | 255 | 0 | Y | N | 封面 | |
5 | chapter_introduction | varchar | 64 | 0 | Y | N | 章节简介 | |
6 | course_type | varchar | 64 | 0 | Y | N | 课程类型 | |
7 | courses | varchar | 64 | 0 | Y | N | 所属课程 | |
8 | teacher_no | int | 10 | 0 | Y | N | 0 | 教师编号 |
9 | teacher_name | varchar | 64 | 0 | Y | N | 教师姓名 | |
10 | learning_objectives | varchar | 64 | 0 | Y | N | 学习目标 | |
11 | preliminary_knowledge | varchar | 64 | 0 | Y | N | 预备知识 | |
12 | thinking_exercises | varchar | 64 | 0 | Y | N | 思考练习 | |
13 | learning_resource | varchar | 255 | 0 | Y | N | 学习资源 | |
14 | details | longtext | 2147483647 | 0 | Y | N | 详情介绍 | |
15 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
16 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
17 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
18 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
19 | 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 | mediumint | 8 | 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 | 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 | 7 | 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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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章 系统详细设计
5.1学生功能模块
学生登录,通过填写账号、密码、完成验证后选择登录即可进入网络课程系统,如下图所示。
图5-1登录界面图
登录的逻辑代码如下:
/**
* 登录
* @param data
* @param httpServletRequest
* @return
*/
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
Map<String, String> map = new HashMap<>();
if(username != null && "".equals(username) == false){
map.put("username", username);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(email != null && "".equals(email) == false){
map.put("email", email);
resultList = service.select(map, new HashMap<>()).getResultList();
}
else if(phone != null && "".equals(phone) == false){
map.put("phone", phone);
resultList = service.select(map, new HashMap<>()).getResultList();
}else{
return error(30000, "账号或密码不能为空");
}
if (resultList == null || password == null) {
return error(30000, "账号或密码不能为空");
}
//判断是否有这个用户
if (resultList.size()<=0){
return error(30000,"用户不存在");
}
User byUsername = (User) resultList.get(0);
Map<String, String> groupMap = new HashMap<>();
groupMap.put("name",byUsername.getUserGroup());
List groupList = userGroupService.select(groupMap, new HashMap<>()).getResultList();
if (groupList.size()<1){
return error(30000,"用户组不存在");
}
UserGroup userGroup = (UserGroup) groupList.get(0);
//查询用户审核状态
if (!StringUtils.isEmpty(userGroup.getSourceTable())){
String sql = "select examine_state from "+ userGroup.getSourceTable() +" WHERE user_id = " + byUsername.getUserId();
String res = String.valueOf(service.runCountSql(sql).getSingleResult());
if (res==null){
return error(30000,"用户不存在");
}
if (!res.equals("已通过")){
return error(30000,"该用户审核未通过");
}
}
//查询用户状态
if (byUsername.getState()!=1){
return error(30000,"用户非可用状态,不能登录");
}
String md5password = service.encryption(password);
if (byUsername.getPassword().equals(md5password)) {
// 存储Token到数据库
AccessToken accessToken = new AccessToken();
accessToken.setToken(UUID.randomUUID().toString().replaceAll("-", ""));
accessToken.setUser_id(byUsername.getUserId());
tokenService.save(accessToken);
// 返回用户信息
JSONObject user = JSONObject.parseObject(JSONObject.toJSONString(byUsername));
user.put("token", accessToken.getToken());
JSONObject ret = new JSONObject();
ret.put("obj",user);
return success(ret);
} else {
return error(30000, "账号或密码不正确");
}
}
学生登录进入首页后,首先看到首页,交流论坛,测试练习,公告消息,学习资源,教学课程,学生作品,我的(我的账户,我的收藏,个人中心),后台主页,个人资料,记事本,学生档案,我的成绩,作业信息,作业批改,教师评价,自我评价等内容,如下图所示。
图5-2学生功能界面图
其中载入页面的主要代码如下:
server:
port: 5000
servlet:
context-path: /api
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/CS725260_20211101091736?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8
username: root
password: root
driver-class-name: com.mysql.cj.jdbc.Driver
jackson:
property-naming-strategy: CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES
default-property-inclusion: ALWAYS
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
servlet:
multipart:
max-file-size: 100MB
max-request-size: 100MB
学习资源,学生在此页面可以查看学习资源,包括专题名称,所属课程,资源类型,发布人等信息,可以进行点赞,收藏,评论等操作,如下图所示。
图5-3学习资源列表界面图
图5-4学习资源详情界面图
教学课程,学生在此页面可以查看教学课程,包括专题名称,所属课程,资源类型,发布人等信息,可以进行点赞,收藏,评论,提交作业等操作,如下图所示。
图5-4教学课程列表界面图
图5-5教学课程详情界面图
图5-6作业提交界面图
测试练习,学生在此页面可以查看测试练习试卷,可以进行答题操作,如下图所示。
图5-7测试界面图
我的成绩,在此页面可以查看各个课程的信息,如下图所示。
图5-8成绩查询界面图
我的作品,学生在此页面可以通过输入作品名称,类型,发布时间,学生编号,姓名,上传作品以提交作品,如下图所示。
图5-9我的作品上传界面图
5.2教师功能模块
课程申请,教师在此页面可以维护管理课程的信息,包括课程名,类型,班级名称,总课时,课时计划,内容介绍,学习方法,考核要求等信息,并可根据需要进行查询,重置,删除,添加等操作,添加后需要管理员审核,如下图所示。
图5-10课程信息管理界面图
图5-11课程新增界面图
教学课程,教师在此页面可以维护教学课程的信息,包括课章节编号,标题,简介,类型,所属课程,学习目标,预备知识,思考练习等信息,并可根据需要进行查询,重置,删除,添加等操作,如下图所示。
图5-12教学课程管理界面图
图5-13教学课程新增界面图
作业信息,教师在此页面可以查看学生提交的作业的信息,并可根据需要进行查询,重置,删除,批改等操作,如下图所示。
图5-14作业信息管理界面图
图5-15作业批改界面图
测试练习,教师在此页面可以维护管理测试练习信息,并可根据需要进行查询,重置,删除,新增等操作,如下图所示。
图5-16测试练习管理界面图
图5-17试题添加界面图
5.5管理员功能模块
管理员登录进入首页后,首先看到后台主页,个人资料,公告管理(轮播图,公告消息),用户管理(管理员,教师,学生),信息管理(交流论坛,论坛分类,测试练习),课程申请,学习资源,素材库,教学课程,记事本,学生档案,学生成绩,学生作品,作业信息,作业批改,评价信息,教师社区,帮助咨询等内容,如下图所示。
图5-18管理员功能界面图
用户管理,管理员在此页面对学生,教师的信息进行维护管理,并可根据需要进行查询,重置,删除,新增,审核等操作,如下图所示。
图5-19用户管理界面图
图5-20用户审核界面图
第6章 系统测试
6.1系统测试的目的
程序设计不能保证没有错误,这是一个开发过程,在错误或错误的过程中都是难以避免的。虽然这是不可避免的,但我们不能使这些错误始终存在于系统中,错误可能会造成无法估量的后果,如系统崩溃,安全信息泄露,系统无法正常启动等,为了避免这些问题,我们需要测试程序,再测试过程中发现问题,并纠正它们,从而使系统更长时间稳定成熟。本章的作用是发现这些问题,并对其进行修改,虽然耗时费力,但对于长期使用而言是非常重要和必要系统的开发。
软件在设计后必须进行测试,调试过程中使用的方法是软件测试方法。在开发新软件时,系统测试是检查软件是否合格的关键步骤,以及是否符合设计目标的参考。测试主要是查看软件中数据的准确性,正确的操作与否,以及操作的结果,还有哪些方面需要改进。
网络课程系统的实现,对于系统中功能模块的实现及操作都必须通过测试进行来评判系统是否可以准确的实现。在网络课程系统正式上传使用之前必须做的一步就是系统测试,对于测试发现的错误及时修改处理,保证系统准确无误的供给用户使用。
6.2系统测试方法
在对网络课程系统进行测试的时候在找到问题的情况下必须在第一时间找到解决问题的办法,不要存在侥幸的心理,这样才能让网络课程系统开发的质量可以过关,并且开发的周期会大大缩短,还有就是在测试时,不要出现重复性的错误,遇到一个错误问题,要将整个网络课程系统开发所牵扯的该问题都必须一一解决,提高网络课程系统平台的安全性、稳定性。
白盒测试与黑盒测试是测试中比较常用的两种方法。
①结构测试俗称白盒测试:这种测试是在对程序的处理过程与结构都有详尽谅解的前提下,顺从程序内部的逻辑而完成的系统测试,以确定系统中所有的通路都能够遵照设计要求正常工作,不出现任何偏差。
②功能测试又成黑盒测试:主要是针对程序功能能够按照设计正常实现的一种检测,在程序接口处进行,检测程序手法数据是否正常,与外部信息的交换是否完整。
6.3功能测试
用户登录测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
登录模块 | 用户名:admin 密码:123 | 弹出错误提示,提示密码错误 | 弹出错误提示,提示密码错误 | 通过 |
登录模块 | 用户名:123 密码:admin | 弹出错误提示,提示用户名错误 | 弹出错误提示,提示用户名错误 | 通过 |
登录模块 | 用户名:admin 密码:admin | 管理员登录成功 | 管理员登录成功 | 通过 |
删除分类测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
删除分类模块 | 分类名:最新通知 | 删除成功、页面自动跳转 | 删除成功、页面自动跳转 | 通过 |
修改密码测试:
模块名称 | 测试用例 | 预期结果 | 实际结果 | 是否通过 |
修改密码模块 | 原密码:666 新密码:123 确认密码:123 | 弹出错误提示,提示原密码错误 | 弹出错误提示,提示原密码错误 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:333 | 弹出错误提示,提示确认密码不一致 | 弹出错误提示,提示确认密码不一致 | 通过 |
修改密码模块 | 原密码:admin 新密码:123 确认密码:123 | 密码修改成功 | 密码修改成功 | 通过 |
通过对功能的测试,网络课程系统的基本功能都是可行的,不管是系统里面的功能,还是界面的设计都是可值得推广宣传的。
结 论
此时项目已经完成,即使实施的时间不是很长,但是这个过程中需要准备很长的一段时间去对系统设计开发所实际到的技术进行学习。在学习的过程中,我逐渐认识得到了我自身存在的一些不足。对于一些控制是必要的应用技能,能够理解,整个过程中仅仅是一个掌握了常用的性能和控制方法,我觉得挺容易的。从该系统中,系统的分析和设计的调查数据,并且已经经历了几个月,并努力几个月,该系统已经完成。很显然,该系统仍有很多不成熟,在系统设计过程中有许多技术缺陷存在。在设计的过程中也涉及到了很多自己无法解决的问题,主要通过找专业的网站和论坛来解决这些问题,对于圆满完成我的毕业设计,他们也贡献了很大一部分力量。系统的开发环境和配置都是可以自行安装的,系统使用SSM开发工具,使用比较成熟的Mysql数据库进行对系统前台及后台的数据交互,根据技术语言对数据库,结合需求进行修改维护,可以使得系统运行更具有稳定性和安全性,从而完成实现系统的开发。
在以后的学习及工作中,我将继续努力学习计算机方面的技术,以期在平台开发中可以更好更快的实现需求功能。
致 谢
网络课程系统的完成,如何实现的更好,其中付出的努力是很大的,这段时光将会终身难忘。
首先要感谢我的指导老师,谢谢您在设计和论文中给我的指导。在您的细心指导下我才能快速的掌握系统的相关功能,在您的大力帮助下我才能将课本上的知识与自己的项目结合,真正的做到学以致用。感谢您经常牺牲自己的休息时间,利用其丰富的教学和项目经验对我进行指导。
感谢所有教过我的老师,为我倾注了大量的心血,正是你们的谆谆教诲、严谨教学才使我能顺利的完成学业,再此向你们表示深深的感谢。
感谢我的同学们,对我的大力支持及帮助,正是你们不断的帮助、鼓励,给我带来了极大的动力,最终系统可以顺利的运行。我们在交流、谈论的这段时间,将是我未来的财富,我要深深地感谢你们。
毕业在即,在今后的工作和生活中,我会铭记师长们的教诲、同学们的帮助,继续不懈努力和追求,来报答所有支持和帮助过我的人。
参考文献
[1]阮眩龙,张汉权,韦贵凡,唐萍,张捷.基于SSM框架的奖学金评定管理系统设计[J].电脑编程技巧与维护,2022(08):106-109.DOI:10.16184/j.cnki.comprg.2022.08.025.
[2]黎洁霞,甘渐宽,王方会,白玉.基于SSM框架的新型可视化食堂管理系统[J].网络安全技术与应用,2022(08):40-41.
[3]Zheng Hongying. A Study on the Design of English Speaking Examination System Based on SSM Framework[J]. Journal of Sensors,2022,2022.
[4]刘源昭,陈伟,曹俊杰,李鹏宇,李英杰,许一靖,孙浩铭.基于SSM架构的图书管理系统[J].山西电子技术,2022(03):61-63+76.
[5]彭婷.基于SSM框架的客户关系管理系统的设计与实现[J].信息与电脑(理论版),2022,34(08):137-139.
[6]陈恒,陈淑丽.基于SSM框架的学生档案管理系统的设计与实现[J].电脑知识与技术,2022,18(10):42-43+47.DOI:10.14004/j.cnki.ckt.2022.0747.
[7]冯子充,秘伟,郭晓利.基于SSM架构的物流公司信息管理系统的设计[J].电脑知识与技术,2022,18(04):24-26.DOI:10.14004/j.cnki.ckt.2022.0253.
[8]朱彬,童颖飞,陈剑,肖苏飞.基于SSM的党建管理系统设计与实现[J].信息与电脑(理论版),2022,34(02):148-151.
[9]李春生,李朝霞,刘涛,胡亚楠.基于SSM的科研室管理系统的研究与设计[J].计算机技术与发展,2021,31(12):148-154.
[10]王宇,夏丽丽,何颖刚.基于SSM框架的高校毕业论文管理系统的设计与实现[J].电子技术与软件工程,2021(22):26-29.
[11]张亚翠. 网课学习资源个性化推荐系统设计与实现[D].首都经济贸易大学,2021.DOI:10.27338/d.cnki.gsjmu.2021.000419.
[12]孙善毅,朱宁.基于SSM框架的学生信息管理系统的开发与应用[J].电子技术与软件工程,2021(04):43-45.
[13]甄真,张秀梅.学生网课学习系统的开发与设计[J].现代信息科技,2020,4(23):8-10+16.DOI:10.19850/j.cnki.2096-4706.2020.23.003.
[14]程瑶.高校计算机网络课程的多重交互共享式微课教学系统研究[J].自动化技术与应用,2020,39(09):167-169.
[15]许乐清.新冠肺炎疫情形势下动态网课系统研究与开发[J].数码世界,2020(06):167.
[16]. Design and Implementation of ERP System Based on SSM Framework[J]. ,2020,440(5).
[17]Hou Y. The design and implementation of the framework for Spring+SpringMVC+MyBatis in the development of Web application[C]//Institute of Management Science and Industrial Engineering.Proceedings of 2019 4th International Industrial Informatics and Computer Engineering Conference(IIICEC 2019).Proceedings of 2019 4th International Industrial Informatics and Computer Engineering Conference(IIICEC 2019),2019:369-374.DOI:10.26914/c.cnkihy.2019.039191.
[18]Ping Wanxin,Chen Yuankun,Hou Xiaoyan. Design of Campus Bicycle Rental Management System Based on SSM Framework[J]. Journal of Physics: Conference Series,2019,1314.
[19]Jihong W,Junmei W,Dongling S. Design and Research of University International Cooperation Office Platform Based on SSM Framework[C]//Jilin Province Science and Technology (S&T) Innovation Center for Physical Simulation and Security of Water Resources and Electric Power Engineering,The Cooperative Innovation Center of Wind Power Equipment and Energy Conversion, Hunan Institute of Engineering,St. John’s University,Hunan Internet of Things Association.Proceedings of 2019 International Conference on Virtual Reality and Intelligent Systems (ICVRIS 2019) Volume I.Proceedings of 2019 International Conference on Virtual Reality and Intelligent Systems (ICVRIS 2019) Volume I,2019:229-232.DOI:10.26914/c.cnkihy.2019.011418.
[20]顾若愚. 基于UCD的再学习网络课程系统设计[D].浙江理工大学,2019.
标签:10,varchar,int,19,源码,64,毕业设计,time,29230 From: https://blog.csdn.net/QQ_785101605/article/details/140472286免费领取项目源码,请关注❤点赞收藏并私信博主,谢谢-