基于JSP实现的作业管理系统

发布于:2022-12-17 ⋅ 阅读:(152) ⋅ 点赞:(0)

目 录
1 系统需求分析 1
1.1 用户需求分析 1
(1) 学生端 1
(2) 老师端 1
1.2 功能需求分析 1
(2) 学生:查看公告,查看课程信息。 1
2 系统设计 2
2.1工作原理 2
本平台采用MVC三层 2
2.2 系统总体设计 2
2.2.1 功能模块设计 2
2.2.2 系统流程设计 2
2.2.3 业务逻辑层设计 3
2.3 系统数据模型设计 4
2.3.1 概念结构设计—E-R图 4
2.3.2 逻辑结构设计—关系表 5
3 系统实现 8
3.1 数据库连接及相关配置文件 8
(3) 编写JDBC的驱动相关信息 8
3.2 数据处理模块的实现 8
3.2.1登录模块的实现 8
3.2.2登出模块的实现 13
3.2.3数据库交互模块的实现 14
其他的查询模块类似,进行相应的编写。 15
3.3 学生模块的实现 15
3.3.1主页模块的实现 15
3.4 老师模块的实现 20
3.3.1主页模块的实现 20
如果不存在则成功添加并提示用户 26
4 结 论 33
1 系统需求分析
1.1用户需求分析
开发作业管理系统的第一步是进行需求分析。需求分析的好坏直接决定着平台能否真正满足用户的需要。分析需求是作业管理平台开发的第一步,也是最重要的一步。所以通过多方面的调查,搜集已有比较成熟的校内作业系统和方案,通过分析比较和资料查询,最后所确定主要的用户需求包括:
(1) 学生端
由于该平台面向的是校内学生,要对学生课程和实际体验做出更接地气的实现。
(2) 老师端
要对老师切实的需求和交互体验做出取舍和设计。
1.2 功能需求分析
理解需求是在问题及其最终解决方案之间架设桥梁的第一步。开发平台必须充分了解平台的面向对象和用户需求,否则,对需求定义的任何改进,设计上都必须大量的返工,而且平台的实用性会偏差。根据前面的用户需求分析,整理出了特达校园特产销售平台的功能需求。
根据角色类型分为老师,学生。
(1)老师:能够对公告修改和查看,对课程相关信息进行修改,布置作业,录入题目。
(2)学生:查看公告,查看课程信息。

2 系统设计
2.1工作原理
本平台采用MVC三层
采用JSP+Servlet+jQuery的技术栈完成


<%--
  Created by IntelliJ IDEA.
  User: SonderLau
  Date: 2020/5/24
  Time: 14:25

--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<html>
<head>
    <title>学生首页</title>
    <link rel="stylesheet" href="../static/css/mdui.min.css">
</head>
<body class="mdui-drawer-body-left">

<!-- 导航栏 -->
<nav>

    <!-- TODO 间距 -->


    <div class="mdui-container-fluid">
        <div class="mdui-row">
            <div class="mdui-typo-headline mdui-center"><h4 class="mdui-text-center">${sessionScope.CurrentLesson}</h4></div>
        </div>
        <div class="mdui-row">
            <div class="mdui-typo mdui-col-xs-3 mdui-col-offset-xs-9">
                <h3>欢迎你 : ${sessionScope.name} <a href="${pageContext.request.contextPath}/logout">登出</a></h3>
            </div>
        </div>
        <div class="mdui-row">
            <div class="mdui-typo mdui-col-xs-3 mdui-col-offset-xs-9">
                <h5>
                    <label for="lessonDecision">切换课程</label>
                    <select id="lessonDecision" class="mdui-select" mdui-select="{position: 'bottom'}">

<%--                        先输出当前的课程 然后再输出其他课程--%>
                        <option value="${sessionScope.course.ID}">${sessionScope.course.name}</option>
                        <!-- TODO: 切换课程 -->
                        <c:forEach items="${sessionScope.LessonChoices}" var="lessonDemo">

                            <c:if test="${lessonDemo.key != sessionScope.course.ID}">
                                <option value="${lessonDemo.key}">${lessonDemo.value}</option>
                            </c:if>
                        </c:forEach>

                    </select>
                </h5>
            </div>
        </div>
        <div class="mdui-row">
            <div>
                <div class="mdui-bottom-nav mdui-bottom-nav-text-auto mdui-color-black">
                    <!-- TODO 跳转链接 -->
                    <a href="${pageContext.request.contextPath}/student/index" class="mdui-ripple mdui-ripple-white mdui-bottom-nav-active">
                        <i class="mdui-icon material-icons">home</i>
                        <label>首页</label>
                    </a>
                    <a href="${pageContext.request.contextPath}/student/lessoninfo" class="mdui-ripple mdui-ripple-white">
                        <i class="mdui-icon material-icons">info_outline</i>
                        <label>课程信息</label>
                    </a>
                    <a href="${pageContext.request.contextPath}/student/onlinehomework" class="mdui-ripple mdui-ripple-white">
                        <i class="mdui-icon material-icons">event_note</i>
                        <label>在线作业</label>
                    </a>
                    <a href="${pageContext.request.contextPath}/student/achievements" class="mdui-ripple mdui-ripple-white">
                        <i class="mdui-icon material-icons">library_books</i>
                        <label>成绩查询</label>
                    </a>
                </div>
            </div>
        </div>

    </div>
</nav>

<!-- 默认抽屉栏在左侧 -->
<div class="mdui-drawer">
</div>



<br><br><br>


<div class="mdui-card mdui-container">
    <div class=" mdui-row mdui-m-t-2">
        <div class=" mdui-typo-display-1 mdui-text-center">最新公告</div>
    </div>
    <div class="mdui-divider-inset mdui-m-y-3"></div>
    <div class="mdui-typo-headline mdui-row mdui-text-center mdui-m-b-2">${sessionScope.course.announcement}</div>
</div>



</body>
<script src="../static/js/jquery-3.4.1.min.js"></script>
<script src="../static/js/mdui.min.js"></script>
<!-- TODO: 切换课程 ajax -->
<script>
    $("#lessonDecision").change(function () {
        $.ajax({
            url : "${pageContext.request.contextPath}/student/index",
            type : "POST",
            data : {"data" : JSON.stringify($("#lessonDecision").val())}
        })
    })
</script>
</html>


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到