【计算机毕业设计】236在线课程管理系统
一、系统截图(需要演示视频可以私聊)
摘要 本文首先介绍了在线课程管理系统的现状及开发背景,然后论述了系统的设计目标、系统需求、总体设计方案以及系统的详细设计和实现,最后对在线课程管理系统进行了系统检测并提出了还需要改进的问题。本系统能够实现教师管理,科目管理,教学计划管理,学生管理,课程管理,课程留言管理,课程收藏管理,通知公告管理等功能[1]。在设计方面,本系统采用B/S三层结构,采用MVC模式,这种模式通过VUE技术来表现页面的动态设计,从系统的安全性和代码的可重用性方面考虑,运用springboot对程序的关键代码进行封装,后台数据库选用MySQL数据库。经过设计开发测试,基本满足了用户的相关需求,较好实现了在线课程管理系统相关的功能和模块。
关键字 在线课程管理系统; springboot框架; MySQL数据库
第1章 绪论
1.1 选题背景
1.2 选题意义
1.3 研究内容
第2章 开发环境
2.1 Java语言
2.2 MySQL数据库
2.3 Eclipse开发工具
2.4 Spring Boot框架
第3章 系统分析
3.1可行性分析
3.2系统流程分析
3.3系统性能分析
3.4系统功能分析
第4章 系统设计
4.1 系统设计目标
4.2功能结构设计
4.3数据库设计
第5章 系统实现
5.1管理员功能实现
5.2 教师功能实现
5.3 学生功能实现
第6章 系统测试
6.1系统测试的特点
6.2 系统功能测试
6.3 系统测试结果
结 论
致 谢
参考文献
1.1 选题背景
目前整个社会发展的速度,严重依赖于互联网,如果没有了互联网的存在,市场可能会一蹶不振,严重影响经济的发展水平,影响人们的生活质量。计算机的发展,不管是从硬件还是软件,都有很多技术储备,每年都有很多的技术和软件产生,纵观各个领域,无一不用互联网软件,办公用的还是电脑居多,但是人手一台智能设备已经变成了现在人们的生活日常,哪怕的普通的老百姓都成了上知天文下知地理的所在,这些都依赖于互联网技术。互联网技术在信息的传播方面是巨大的,而信息的处理就变成了各种产业管理者和维护者的重任。人们已经习惯了互联网的存在,所以经常操作一些互联网产品变成了日常,所以开发一个在线课程管理系统,让人们使用是没有一点问题的,并且在这个过程中不仅能够规范课程信息管理的使用流程还有信息处理流程,也能让整个信息的传播处理,都存在一种可控制的范围,最重要的是,计算机在课程信息管理方面可以给管理者提供更好的帮助。
1.2 选题意义
当开发软件变成了一个潮流之后,会发现不管任何行业都能开发适合自己的软件,不管是内部员工管理,还是财务管理,甚至业务管理都可以数据化,并且可以对这些数据集中处理,进而根据数据处理结果就自然而然的提高了管理水平,最重要的是,开发一个软件投入使用,开发过程其实就是梳理行业痛点的过程,就是让软件来弥补行业的管理漏洞,不断的优化事物的处理流程。在线课程管理系统就是一款专门开发的软件,通过Web技术,让使用者可以在任何一台智能设备上面通过浏览器进行操作使用,对数据的处理不再局限于地域距离,只要软件开发到位,使用起来方便,达到预期目的,会发现有软件和没有软件的区别是很大的,有了这款软件之后,会发现数据的存储安全方
3.1可行性分析
在项目进行开发之前,必须要有可行性分析报告,分别从技术角度,经济角度,操作角度上面进行分析,经过可行性分析是实现科学开发的必要步骤。
3.1.1技术可行性
从技术的角度出发,目前采用开发的技术完全能满足系统开发需要。目前市场上有现成的软件开发工具和开发技术,这些可以保证系统开发的顺利进展。
3.1.2操作可行性
在线课程管理系统是根据用户经常使用的页面操作流程来进行设计的,并且页面保证统一,从视觉角度和操作角度上都能达到使用要求。
3.1.3经济可行性
在本次开发过程中,因为需要通过电脑来进行配置开发的环境,通过对技术的分析,发现目前正在使用的电脑是可以满足开发需要的,并不需要太多的金钱对电脑进行更换。所以,从经济角度上分析,可以满足开发要求。
从以上三个角度来进行分析论证,证明了在线课程管理系统是可以正常开发并且使用的。
3.2系统流程分析
任何一个系统都有一个操作流程,本设计里面,对于任何数据的存储都有一定的合法要求,只有符合设定要求的数据才可以进行存储。如图3.2。
删除操作,在数据存储方面是一件比较慎重的事件,很有可能会产生失误操作,所以一般删除操作的时候都要提示是否删除,确定删除才会更新数据库内容,实现删除目的。如图3.4。
3.3系统性能分析
3.3.1系统安全性
注册用户与游客用户的区别就在于是否有账号,如果有账号,那么就有相关的注册用户权限,有账号就有密码,密码是保证账号安全性的前提,游客只能浏览一些公共性信息,如果需要用户登录才能观看的信息,那么也需要使用账号登录的。对于系统安全性上面,主要考虑角色的密码加密问题,这样可以防止有效的密码数据拦截后的破解工作。一般密码如果有安全性要求的话,是可以考虑加密存储。密码的加密存储大致有两种设计方法,一种是密码在前台提交后就用Java Script进行MD5加密,然后直接提交密文,这样的好处是密文传输的安全性,另一种是提交密码后在后台处理的过程中对密码进行加密或者解密,这样会增加后台的处理负担。一般都居中考虑,如果登录的话会把密码在后台进行加密与数据库密码进行对比。目前常用的加密方式是MD5加密方式。
3.3.2数据完整性
系统进行开发的最重要的目的就是数据的处理,计算机有其擅长数据的存储以及处理工作,所以数据的完整性是必须保证的,不然系统的存在是没有必要的。数据不管是设计还是存储,都必须完整,从数据的输入就从各个方面保证数据的合法性,违规数据不能直接提交的。数据处理逻辑也会保证数据的加工正常,进而进行数据存储,也会保证数据设计的合理,这些都是有数据设定要求的。目前对数据的存储采用的关系型数据库,关系型数据库有多年的历史,功能强大,迁移备份以及无人值守都可以进行自动备份的。
3.3.3系统可扩展性
系统是有必要存在扩展性的。在设计之初就要考虑可能存在的业务,所以对系统的设计就要模块化设计,这样需要进行扩展的时候,只要在对应模块进行增加,对应逻辑进行调试即可。系统可扩展性的提升会让系统增加不必要的工作量,让程序设计更加符合规范。
3.4系统功能分析
本系统在功能分析上,主要是根据目标用户群的角度进行分析,为了便于展示分析结果,这里就使用用例图进行功能展示。
管理员用例图的绘制结果见图3.5。管理员登录进入本系统操作的功能包括对教学计划,通知公告,教师,学生,课程信息进行增删改查,以及管理课程收藏和课程留言,管理班级等信息。
教师用例图的绘制结果见图3.6。教师登录进入本系统操作的功能包括新增教学计划,新增课程信息,对学生的课程留言进行回复,查看通知公告。
学生用例图的绘制结果见图3.7。学生登录进入本系统操作的功能包括观看课程视频,查看课程知识,对课程留言,查看通知公告,更改个人信息。
图3.7 学生用例图
4.1 系统设计目标
系统设计的时候,就要制定需要达成的目标。在功能上,要严格符合设计需求,不仅仅要减少操作步骤,也要符合预期。因此,在规范化的今天设计出符合项目要求的系统,必须要达到下面设定的目标。
只要保证数据安全性的前提,开发出符合功能需求的友好界面操作,那么就达到了系统设计的目的。
4.2功能结构设计
本系统主要是基于数据的增加,修改,删除等操作,使用者能够通过提前设定的登录功能进入指定的操作区,这里对使用者设计的功能进行结构展示。
管理员功能结构图的绘制结果见图4.1。管理员登录进入本系统操作的功能包括对教学计划,通知公告,教师,学生,课程信息进行增删改查,以及管理课程收藏和课程留言,管理班级等信息。
教师功能结构图的绘制结果见图4.2。教师登录进入本系统操作的功能包括新增教学计划,新增课程信息,对学生的课程留言进行回复,查看通知公告。
学生功能结构图的绘制结果见图4.3。学生登录进入本系统操作的功能包括观看课程视频,查看课程知识,对课程留言,查看通知公告,更改个人信息。
4.3数据库设计
4.3.1 数据库概念设计
本节内容主要是使用图形的方式来描述数据库中的实体,每个实体的相应属性,还有实体之间的相互联系,常用的Visio工具即可满足绘制E-R图的需求。E-R图是由矩形,椭圆,菱形等图形元素组成,矩形框中主要写实体的名称,椭圆框中主要是登记该实体的属性,而菱形框中主要是登记实体之间的联系名称,最后使用实心线段把这些图形元素进行连接,即可完成E-R图的绘制[9]。当初步得到一个E-R图时,需要进行检查,使用分析的方式去修改,重构E-R图,以达到消除数据冗余[10],或者是消除实体间联系冗余的目的。从而保持数据库的完整性,以及降低数据库维护上面的难度[11]。
- 使用Visio这样的常用的实体属性图绘制工具来绘制教师实体属性图,绘制结果见图4.3。
图4.3 教师实体属性图
- 使用Visio这样的常用的实体属性图绘制工具来绘制课程实体属性图,绘制结果见图4.4。
图4.4 课程实体属性图
- 使用Visio这样的常用的实体属性图绘制工具来绘制教学计划实体属性图,绘制结果见图4.5。
图4.5 教学计划实体属性图
- 使用Visio这样的常用的实体属性图绘制工具来绘制学生实体属性图,绘制结果见图4.6。
图4.6 学生实体属性图
- 绘制的上述实体间存在的联系见图4.7。
图4.7 实体间关系E-R图
4.3.2 数据库物理设计
本系统数据在数据库中都是通过各种二维表进行记录保存的,在数据库中设计这样的二维表也是比较重要的内容,因为它影响着数据的存储效率。在设计二维表也就是关系模型之前,一些有关二维表方面的常用概念需要进行充分了解。
关系:一张具体的数据表即表示关系,关系的名称与数据表的名称保持一致;
元组:数据表中,每行显示的数据即代表元组;
属性:数据表中,每列表示的数据即代表属性;
关键字:数据表中,为了与其他数据表进行区分,则需要在每张表中进行主键的设置;
通过上节内容可以知晓数据库中的各个实体,并通过一定方式把这些实体表示的内容进行数据表的转换,通常来说,每个实体都会对应一张具体的数据表,在本系统指定的数据库中创建命名好的数据库,才可以对数据表进行创建与设计。在线课程管理系统数据表设计结果展示如表4.1,表4.2,表4.3,表4.4,表4.5,表4.6,表4.7,表4.8:
表4.1 通知公告表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
int(11) |
否 |
gonggao_name |
通知公告名称 |
varchar(200) |
是 |
gonggao_photo |
通知公告图片 |
varchar(200) |
是 |
gonggao_types |
通知公告类型 |
int(11) |
否 |
insert_time |
通知公告发布时间 |
timestamp |
是 |
gonggao_content |
通知公告详情 |
text |
是 |
create_time |
创建时间 |
timestamp |
是 |
表4.2 教师表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
int(11) |
否 |
username |
账户 |
varchar(200) |
是 |
password |
密码 |
varchar(200) |
是 |
jiaoshi_name |
教师姓名 |
varchar(200) |
是 |
jiaoshi_phone |
教师手机号 |
varchar(200) |
是 |
jiaoshi_id_number |
教师身份证号 |
varchar(200) |
是 |
jiaoshi_photo |
教师头像 |
varchar(200) |
是 |
sex_types |
性别 |
int(11) |
是 |
jiaoshi_email |
电子邮箱 |
varchar(200) |
是 |
create_time |
创建时间 |
timestamp |
是 |
表4.3 教学计划表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
int(11) |
否 |
jiaoshi_id |
教师 |
int(11) |
是 |
续表4.3
字段 |
注释 |
类型 |
空 |
kecheng_id |
课程 |
int(11) |
是 |
jiaoxuejihua_uuid_number |
教学计划编号 |
varchar(200) |
是 |
jiaoxuejihua_name |
教学计划名称 |
varchar(200) |
是 |
jiaoxuejihua_file |
教学计划文件 |
varchar(200) |
是 |
jiaoxuejihua_types |
教学计划类型 |
int(11) |
是 |
jiaoxuejihua_content |
教学计划内容 |
text |
是 |
insert_time |
记录时间 |
timestamp |
是 |
create_time |
创建时间 |
timestamp |
是 |
表4.4 课程表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
int(11) |
否 |
jiaoshi_id |
教师 |
int(11) |
是 |
kecheng_name |
课程名称 |
varchar(200) |
是 |
kecheng_uuid_number |
课程编号 |
varchar(200) |
是 |
kecheng_photo |
课程照片 |
varchar(200) |
是 |
kecheng_video |
课程视频 |
varchar(200) |
是 |
kecheng_file |
课件 |
varchar(200) |
是 |
kecheng_types |
科目 |
int(11) |
是 |
kecheng_clicknum |
课程热度 |
int(11) |
是 |
kecheng_content |
课程内容 |
text |
是 |
zhishiyaodian_content |
知识要点 |
text |
是 |
kaoshidagang_content |
考试大纲 |
text |
是 |
shangxia_types |
是否上架 |
int(11) |
是 |
kecheng_delete |
逻辑删除 |
int(11) |
是 |
create_time |
创建时间 |
timestamp |
是 |
表4.5 课程收藏表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
int(11) |
否 |
kecheng_id |
课程 |
int(11) |
是 |
xuesheng_id |
学生 |
int(11) |
是 |
kecheng_collection_types |
类型 |
int(11) |
是 |
insert_time |
收藏时间 |
timestamp |
是 |
create_time |
创建时间 |
timestamp |
是 |
表4.6 课程留言表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
int(11) |
否 |
kecheng_id |
课程 |
int(11) |
是 |
xuesheng_id |
学生 |
int(11) |
是 |
kecheng_liuyan_text |
留言内容 |
text |
是 |
insert_time |
留言时间 |
timestamp |
是 |
reply_text |
回复内容 |
text |
是 |
update_time |
回复时间 |
timestamp |
是 |
create_time |
创建时间 |
timestamp |
是 |
表4.7 管理员表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
bigint(20) |
否 |
username |
用户名 |
varchar(100) |
否 |
password |
密码 |
varchar(100) |
否 |
role |
角色 |
varchar(100) |
是 |
addtime |
新增时间 |
timestamp |
否 |
表4.8 学生表
字段 |
注释 |
类型 |
空 |
id (主键) |
主键 |
int(11) |
否 |
username |
账户 |
varchar(200) |
是 |
password |
密码 |
varchar(200) |
是 |
xuesheng_name |
学生姓名 |
varchar(200) |
是 |
xuesheng_phone |
学生手机号 |
varchar(200) |
是 |
xuesheng_id_number |
学生身份证号 |
varchar(200) |
是 |
xuesheng_photo |
学生头像 |
varchar(200) |
是 |
sex_types |
性别 |
int(11) |
是 |
banji_types |
班级 |
int(11) |
是 |
xuesheng_email |
电子邮箱 |
varchar(200) |
是 |
create_time |
创建时间 |
timestamp |
是 |
5.1管理员功能实现
5.1.1 通知公告管理
管理员进入如图5.1所示的通知公告管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成通知公告信息的修改,删除等操作。通知公告信息有通知公告名称,通知公告内容等信息[12]。
5.1.2 教师管理
管理员进入如图5.2所示的教师管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成教师信息的修改,删除等操作。
图5.2 教师管理界面
教师删除@RequestMapping("/delete")
public R delete(@RequestBody Integer[] ids){
logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());
jiaoshiService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
5.1.3 学生管理
管理员进入如图5.3所示的学生管理界面之后,管理员点击信息显示栏中最右侧的修改,删除按钮可依次完成学生信息的修改,删除等操作。学生的账号密码,管理员也能重置。
图5.3 学生管理界面
学生删除@RequestMapping("/delete")
public R delete(@RequestBody Integer[] ids){
logger.debug("delete:,,Controller:{},,ids:{}",this.getClass().getName(),ids.toString());
xueshengService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
5.2 教师功能实现
5.2.1 教学计划管理
教师进入如图5.4所示的教学计划管理界面之后,教师点击信息显示栏中最右侧的修改,删除按钮可依次完成教学计划信息的修改,删除等操作。教学计划信息包括教学计划文件,教学计划名称,教学计划编号等信息,教师可以添加教学计划。
图5.4 教学计划管理界面
添加教学计划@RequestMapping("/save")
public R save(@RequestBody JiaoxuejihuaEntity jiaoxuejihua, HttpServletRequest request){
logger.debug("save方法:,,Controller:{},,jiaoxuejihua:{}",this.getClass().getName(),jiaoxuejihua.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
if(false)
return R.error(511,"永远不会进入");
else if("教师".equals(role))
jiaoxuejihua.setJiaoshiId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
Wrapper<JiaoxuejihuaEntity> queryWrapper = new EntityWrapper<JiaoxuejihuaEntity>()
.eq("jiaoshi_id", jiaoxuejihua.getJiaoshiId())
.eq("kecheng_id", jiaoxuejihua.getKechengId())
.eq("jiaoxuejihua_uuid_number", jiaoxuejihua.getJiaoxuejihuaUuidNumber())
.eq("jiaoxuejihua_name", jiaoxuejihua.getJiaoxuejihuaName())
.eq("jiaoxuejihua_types", jiaoxuejihua.getJiaoxuejihuaTypes())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
JiaoxuejihuaEntity jiaoxuejihuaEntity = jiaoxuejihuaService.selectOne(queryWrapper);
if(jiaoxuejihuaEntity==null){
jiaoxuejihua.setInsertTime(new Date());
jiaoxuejihua.setCreateTime(new Date());
jiaoxuejihuaService.insert(jiaoxuejihua);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
5.2.2 课程管理
String role = String.valueOf(request.getSession().getAttribute("role"));
if(false)
return R.error(511,"永远不会进入");
else if("教师".equals(role))
kecheng.setJiaoshiId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
Wrapper<KechengEntity> queryWrapper = new EntityWrapper<KechengEntity>()
.eq("jiaoshi_id", kecheng.getJiaoshiId())
.eq("kecheng_name", kecheng.getKechengName())
.eq("kecheng_uuid_number", kecheng.getKechengUuidNumber())
.eq("kecheng_video", kecheng.getKechengVideo())
.eq("kecheng_types", kecheng.getKechengTypes())
.eq("kecheng_clicknum", kecheng.getKechengClicknum())
.eq("shangxia_types", kecheng.getShangxiaTypes())
.eq("kecheng_delete", kecheng.getKechengDelete())
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
KechengEntity kechengEntity = kechengService.selectOne(queryWrapper);
if(kechengEntity==null){
kecheng.setKechengClicknum(1);
kecheng.setShangxiaTypes(1);
kecheng.setKechengDelete(1);
kecheng.setCreateTime(new Date());
kechengService.insert(kecheng);
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
5.2.3 课程留言管理
教师进入如图5.6所示的课程留言管理界面之后,教师点击信息显示栏中最右侧的详情,回复按钮可依次完成课程留言信息的详情查看,留言回复等操作。
String role = String.valueOf(request.getSession().getAttribute("role"));
// if(false)
// return R.error(511,"永远不会进入");
// else if("学生".equals(role))
// kechengLiuyan.setXueshengId(Integer.valueOf(String.valueOf(request.getSession().getAttribute("userId"))));
//根据字段查询是否有相同数据
Wrapper<KechengLiuyanEntity> queryWrapper = new EntityWrapper<KechengLiuyanEntity>()
.eq("id",0)
;
logger.info("sql语句:"+queryWrapper.getSqlSegment());
KechengLiuyanEntity kechengLiuyanEntity = kechengLiuyanService.selectOne(queryWrapper);
kechengLiuyan.setUpdateTime(new Date());
if(kechengLiuyanEntity==null){
kechengLiuyanService.updateById(kechengLiuyan);//根据id更新
return R.ok();
}else {
return R.error(511,"表中有相同数据");
}
}
5.3 学生功能实现
5.3.1 课程信息
学生进入如图5.7所示的课程信息界面之后,学生通过播放课程视频的方式学习课程知识,学生也能查看课程的知识要点,考试大纲等信息,还可以发布课程的留言信息。
图5-7 课程信息界面
5.3.2 通知公告
学生进入如图5.8所示的通知公告界面之后,学生根据通知公告类型筛选通知公告信息,学生可以查看通知公告的具体内容。
图5-8 通知公告界面
5.3.3 更改个人信息
学生进入如图5.9所示的更改个人信息界面之后,学生重新上传头像来替换现有的头像,以及对电子邮箱,手机号等产生变化的数据进行更改,更改了数据之后,需要学生点击更新信息按钮来保存更改的数据。
图5.9 更改个人信息界面
更改个人信息@RequestMapping("/update")
public R update(@RequestBody XueshengEntity xuesheng, HttpServletRequest request){logger.debug("update方法:,,Controller:{},,xuesheng:{}",this.getClass().getName(),xuesheng.toString());
String role = String.valueOf(request.getSession().getAttribute("role"));
// if(false)
// return R.error(511,"永远不会进入");
//根据字段查询是否有相同数据
Wrapper<XueshengEntity> queryWrapper = new EntityWrapper<XueshengEntity>()
.notIn("id",xuesheng.getId())
.andNew()
.eq("username", xuesheng.getUsername())
.or()
.eq("xuesheng_phone", xuesheng.getXueshengPhone())
.or()
.eq("xuesheng_id_number", xuesheng.getXueshengIdNumber());
logger.info("sql语句:"+queryWrapper.getSqlSegment());
XueshengEntity xueshengEntity = xueshengService.selectOne(queryWrapper);
if("".equals(xuesheng.getXueshengPhoto()) || "null".equals(xuesheng.getXueshengPhoto())){
xuesheng.setXueshengPhoto(null); }
if(xueshengEntity==null){
xueshengService.updateById(xuesheng);//根据id更新
return R.ok(); }else {
return R.error(511,"账户或者学生手机号或者学生身份证号已经被使用");}}
6.1系统测试的特点
系统测试,是有一定的特点,并且根据这些特定也有相关的描述信息,下面就是对这些测试的特点来进行阐述:
第一点:完整的测试,就是在用户的角度上,通过不同的权限,来测试不同的模块,最终判断程序的优劣性。
第二点:测试主要从程序的设计架构方面来进行测试,也需要从业务操作流程方面测试。
第三点:测试不是想一出是一出,要有严谨的测试步骤,测试目的,只有科学的测试方法才能产生科学的测试结果,能很好的对出错几率进行降低。
总的来说,系统测试不仅仅是让功能符合,还要在突发情况下有相应的配套表现,只要考虑的多,做的多,系统运行过程中才能更加平稳。
6.2 系统功能测试
6.2.1 学生登录测试
登录测试是所有功能里面最基础也是重要的部分,只有合法的登录才可以进行对应权限的操作,不合法的登录肯定是不让学生进行下一步操作的。具体步骤参考表6.1。
测试功能 |
操作流程 |
测试的数据 |
结果 |
是否符合要求 |
学生登录 |
学生填写账号,填写密码,数据填写完成之后点击登录按钮 |
账号和密码保证一个错一个正确 |
不能登录 |
是 |
账号和密码都正确 |
登录成功 |
是 |
6.2.2 课程查询测试
查询功能是一个常用的功能,通过条件查询可以获得自己所需的内容,条件输入也需要输入正确的已经存在的条件才可以有获取结果,对不同的获取条件返回不同的结果集。如图表6.2
表6.2 课程查询功能测试表
测试功能 |
操作流程 |
测试的数据 |
结果 |
是否符合要求 |
课程查询功能 |
在查询界面的数据输入框中登记关键词然后搜索 |
课程名称有误或为空 |
不能查询 |
是 |
课程名称信息正确 |
查询成功 |
是 |
6.3 系统测试结果
经过整体性测试,在线课程管理系统测试无误,符合设计预期,同时也符合操作性设定以及易维护性设定,并且在数据的安全性保障上也有很好的体现。在线课程管理系统已经可以使用。
参考文献
- 刘贺滨, 侯超钧. 基于Java EE在线作业管理系统的设计与实现[J]. 软件, 2019, 40(9):4.
- 宋亮, 徐明, 尹智勇. 高等学校多媒体教学服务网络平台的设计与实现[C]// 全国高等学校教育技术协作委员会年会暨学术交流会. 全国高等学校教育技术协作委员会, 2009.
- 杜娟. 基于Web的考试系统的设计与实现[D]. 哈尔滨师范大学.
- K Gusarovs. An Analysis on Java Programming Language Decompiler Capabilities[J]. Applied Computer Systems, 2018, 23(2):109-117.
- 丘辉麒, 言晓娟. 教学网站建设的几点思考[J]. 电化教育研究, 2005(11):2.
- Y Tan. A Hardware-oriented Object Model for Java in an Embedded Processor[J]. Microprocessors and Microsystems, 2018, 63(NOV.):85-97.
- 王栋, 刘锦康, 姜波. 基于C/S和B/S混合模式的高校学生管理系统设计[J]. 中国电力教育, 2009(2):2.
- 魏洪涛, 李群, 王维平. 基于Web的管理信息系统的安全模型设计[J]. 计算机应用, 2003, 23(5):4.
- 石磊, 周祎. 大数据在高校学生管理工作中的应用与策略研究[J]. 科技展望, 2017(27).
- 李晶. 数据库设计理论的研究[J]. 科技创新导报, 2009(18):1.
- 王革, 张成玉. Access数据库程序设计:任务课程实训[M]. 中国电力出版社, 2010.
- 刘乃丽. 精通ASP.NET 2.0+SQL SERVER 2005项目开发(附光盘)[M]. 人民邮电出版社, 2007.
- 江军强. 基于ASP.NET的题库管理系统的开发[J]. 宁德师范学院学报:自然科学版, 2013, 25(2):5.
- 白庆华. 面向对象方法的未来发展[J]. 计算机系统应用, 1994(11):2.
- 付苏嘉. 基于ASP的高校网上选课系统的研究与设计[J]. 贵州大学学报:自然科学版, 2010, 27(4):5.
【计算机毕业设计】236在线课程管理系统相关推荐
- java计算机毕业设计小学教师课程管理系统源程序+mysql+系统+lw文档+远程调试
java计算机毕业设计小学教师课程管理系统源程序+mysql+系统+lw文档+远程调试 java计算机毕业设计小学教师课程管理系统源程序+mysql+系统+lw文档+远程调试 本源码技术栈: 项目架构 ...
- JAVA计算机毕业设计早教课程管理系统Mybatis+源码+数据库+lw文档+系统+调试部署
JAVA计算机毕业设计早教课程管理系统Mybatis+源码+数据库+lw文档+系统+调试部署 JAVA计算机毕业设计早教课程管理系统Mybatis+源码+数据库+lw文档+系统+调试部署 本源码技术栈 ...
- ssm+Vue计算机毕业设计学生在线请假管理系统(程序+LW文档)
ssm+Vue计算机毕业设计学生在线请假管理系统(程序+LW文档) 项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Ecl ...
- 计算机毕业设计Java在线家教管理系统(源码+系统+mysql数据库+Lw文档)
运行环境: 开发工具:IDEA /Eclipse 数据库:MYSQL5.7 应用服务:Tomcat7/Tomcat8 使用框架:Spring+SpringMVC+mybatis 介绍 前台部分功能 注 ...
- java计算机毕业设计ssm在线教学管理系统java计算机毕业设计ssm易物小店交换系统-二手咸鱼交易系统
项目介绍 通篇文章的撰写基础是实际的应用需要,然后在架构系统之前全面复习大学所修习的相关知识以及网络提供的技术应用教程,以易物小店的实际应用需要出发,架构系统来改善现易物小店工作流程繁琐等问题.不仅如 ...
- 【计算机毕业设计】133在线课程管理系统
一.系统截图(需要演示视频可以私聊) 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟.本文介绍了在线课程管理系统的开发全过程.通过分析在线课程管理系统管理的不足 ...
- 计算机毕业设计Java在线文档管理系统(源码+系统+mysql数据库+Lw文档)
计算机毕业设计Java在线文档管理系统(源码+系统+mysql数据库+Lw文档) 计算机毕业设计Java在线文档管理系统(源码+系统+mysql数据库+Lw文档) 本源码技术栈: 项目架构:B/S架构 ...
- 计算机毕业设计-ssm饮用水配送管理系统代码-javaweb在线配送桶装水管理系统-水站配送管理java项目
计算机毕业设计-ssm饮用水配送管理系统代码-javaweb在线配送桶装水管理系统-水站配送管理java项目 注意:该项目只展示部分功能,如需了解,评论区咨询即可. 作者:IT跃迁谷 1.开发环境 开 ...
- 计算机毕业设计JAVA贴吧管理系统mybatis+源码+调试部署+系统+数据库+lw
计算机毕业设计JAVA贴吧管理系统mybatis+源码+调试部署+系统+数据库+lw 计算机毕业设计JAVA贴吧管理系统mybatis+源码+调试部署+系统+数据库+lw 本源码技术栈: 项目架构:B ...
最新文章
- LIBSVM 多分类问题- 葡萄酒种类识别
- 用 Gearman 分发 PHP 应用程序的工作负载
- OpenSilver: 通过WebAssembly 复活Silverlight
- poj1258 Agri-Net 最小生成树Kruskal、Prim
- nyoj-155-求高精度幂(java大数)
- php管理nginx虚拟主机shell脚本
- 无限循环小数和无限不循环小数
- imregionalmax imregionalmin imextendedmax imextendedmin imhmax imhmin 函数的详解 matlab中函数
- TensorFlow介绍_中英文对照
- 一个纸水杯的测试用例设计。
- js layui跳转页面_js中实现页面跳转
- hdb3编码程序设计c语言,已知代码10000000001011,利用c语言程序编写AMI码跟HDB3码
- 如何使用摸瓜快速查手机apk加壳
- 备忘录模式(设计模式_20)
- [开发工具] STM32算法的翅膀之MATLAB
- html图片靠右浮动 文字左侧环绕,CSS 模拟float实现center文字左右环绕图片的效果...
- 2012年桂城街道小学毕业生升初中
- 导入动态web工程出现感叹号和叉叉的解决办法
- ACM 广搜 Hero In Maze
- 最新的漆包线生产工艺流程,9000余字细节介绍。让你读懂漆包线流程