实验目的
在实验中,熟练运用 Java 语言、Web前端技术(HTML、JavaScript、CSS)、Web后端技术(Servlet、JSP、Listener、Filter、JDBC等)、数据库,开发一套基本完善的基于Web的业务系统。通过实验,学生能够掌握Web开发的基本原理、开发方法及开发流程,掌握运用Web基本技术解决实际问题的开发能力。
实验内容
在线课程申请模块功能:
学生登录功能
已有账号学生可以在线登录到申请系统中。
用户账户数据可预先存储到数据库中。
在线申请功能
学生登录后,在可选课程列表中,选择要申请的课程。
每次申请只能选择一门课程,不可重复申请。
申请课程时,应填写必要的申请信息,如:申请原因、上传证明等。
课程详细数据可预先存储到数据库中。
已申请课程,审批进度查询功能
审批过程中的申请可以进行进度查询。
审批状态有:申请已提交、课程主讲教师审批中、课程主管教师审批中、审批成功、申请驳回。
审批结束后,也就是审批状态为成功或者驳回,学生可以点击确认,完成本次申请。
结束本次申请后,在进度查询功能中不能再看到该条申请信息。
被驳回申请的课程,可线下沟通后,再次重新提交新的申请。
已申请课程审批记录查询功能
学生可查询本人已申请的全部记录,包括审批通过和驳回的记录。
申请记录可使用分页显示,可使用多条件查询。
在线审批模块功能:
课程申请审批功能
已有教师角色账号的教师可登录审批功能。
教师角色用户细分为:课程主讲教师和主管教师,主讲教师为该门课程的第一审批人,主管教师为第二审批人。
具体课程的主讲和主管教师对应关系数据,可预先存储到数据库中。
如果已提交的申请不符合申请条件,可以驳回,但驳回必须填写具体的原因,以便学生再次提交新的申请。
已审批申请查询功能
教师可查询已审批的申请,查询结果可使用分页显示,可使用多条件查询。
额外功能:
在系统基本功能(实验内容1、2)基础之上,实现额外功能,使系统功能更加完善。
系统后台
系统用户管理、课申请课程管理、用户审批权限管理(课程与审批教师关系)、审批记录查询、导出已审批通过记录等功能。
创建审批流
可根据具体要求,动态创建课程审批流程,可动态指定不同类别课程的审批步骤及审批人。
拓展需求:
系统设计时需考虑系统的延展性、兼容性、可用性、通用性、健壮性、跨平台及持续集成,不仅能满足现有需要,也要适应未来发展的能力。
适应兼容性,系统应使用持久化层框架(MyBatis)
适应通用性,系统应采用MVC设计模式
适应持续集成,系统应采用容器部署(Docker)
适应可用性,系统界面需布局合理,用户使用方便快捷,用户体验好
适应健壮性,系统应充分考虑运行期间的各种异常情况并加以处理,保证运行时不出现异常或业务逻辑错误等重大问题
实验环境
集成开发工具:IDEA
数据库:MySQL
操作系统:windows10
Web服务器:Tomcat
实验过程与分析

该项目采用MVC架构实现,分为dao层,实体类,filiter过滤器,service层,servelet层,util层

该项目的前端由以下几个文件组成

如图所示为html登录界面,首先导入css的全面样式,全局样式是指适用于整个网站的样式表,可以在每个页面的header中使用标记将其导入。全局样式可以定义全站通用的字体、颜色、布局等样式,使网站风格统一,提高用户体验。其次导入jQuery,jQuery是一种JavaScript库,旨在简化处理HTML文档、事件处理、动画处理、AJAX等常见任务的编程。可以通过在head中引用jQuery的CDN或本地库来导入jQuery。导入jQuery后可以使用$()或jQuery()语法来选择页面元素、修改样式、绑定事件、发送AJAX请求等。Bootstrap是一种流行的前端开发框架,提供大量的CSS样式和JavaScript组件。通过在head中引用Bootstrap的CDN或本地库,可以使用Bootstrap提供的JavaScript组件,例如导航栏、弹出框、轮播图等,可以使网站开发更加高效,同时提供了一致的UI界面和用户体验。

如图所示为登录界面。



该实验运用Java、Web前后端技术及数据库,开发基于Web的在线课程申请系统。系统包含学生申请、教师审批等功能,采用MVC架构,前端引入Bootstrap框架。实验展示了项目开发流程,强调架构模式对代码管理维护的重要性,提升了开发者的知识和技能。
最低0.47元/天 解锁文章
1138

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



