javaWeb在线考试系统

一、简介

在线考试系统是现代教育中一项重要的辅助教学工具,它为学生提供了便捷的考试方式,同时也为教师提供了高效的考试管理方式。我设计了一个基于JavaWeb的在线考试系统,该系统包括三个角色:管理员、老师和学生。管理员拥有菜单列表、课程管理、班级管理和老师管理的权限;老师拥有菜单列表、学生管理、考试管理、题库管理、成绩管理和成绩查询的权限;学生拥有考试中心、考试历史和进入考试的权限。

二、功能介绍

1.管理员功能:

  1. 菜单列表:管理员可以查看系统菜单列表,方便进行导航。
  2. 课程管理:管理员可以管理课程信息,包括添加新课程、编辑课程信息、删除课程等。
  3. 班级管理:管理员可以管理班级信息,包括添加新班级、编辑班级信息、删除班级等。
  4. 老师管理:管理员可以管理教师信息,包括添加新教师、编辑教师信息、删除教师等。

2.老师功能:

  1. 菜单列表:老师可以查看系统菜单列表,方便进行导航。
  2. 学生管理:老师可以管理学生信息,包括添加新学生、编辑学生信息、删除学生等。
  3. 考试管理:老师可以创建新的考试,设置考试时间、考试范围等。
  4. 查看考试信息:老师可以查看考试相关信息,包括考试时间、考试人数等。
  5. 题库管理:老师可以管理题库,包括添加单选题、多选题等。
  6. 成绩管理:老师可以录入学生考试成绩。
  7. 成绩查询:老师可以查询学生的考试成绩。

3.学生功能:

  1. 考试中心:学生可以查看可参加的考试列表,并选择进入考试。
  2. 考试历史:学生可以查看已参加考试的历史记录。
  3. 进入考试:学生可以进入指定的考试进行答题。

三、技术实现

  1. Maven:使用Maven进行项目管理,管理项目依赖。
  2. Spring:使用Spring框架进行依赖注入和控制反转,提高代码的灵活性和可维护性。
  3. Spring MVC:使用Spring MVC框架实现前后端交互,采用MVC模式开发项目。
  4. MyBatis:使用MyBatis框架实现持久层的数据操作,简化数据库操作的过程。
  5. JSP:使用JSP作为页面展示的技术,实现动态页面的生成。

pom.xml

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.8.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>cn.com.scitc</groupId>
    <artifactId>graduationproject</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>graduationproject</name>
    <description>Demo project for Spring Boot</description>

    <properties>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.webjars</groupId>
            <artifactId>bootstrap</artifactId>
            <version>3.3.7</version>
        </dependency>
        <dependency>
            <groupId>org.webjars</groupId>
            <artifactId>jquery</artifactId>
            <version>3.4.1</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.58</version>
        </dependency>
        <dependency>
            <groupId>org.webjars.bower</groupId>
            <artifactId>bootstrap-select</artifactId>
            <version>1.12.4</version>
        </dependency>
        <!-- pageHelper分页插件 -->
        <!--<dependency>-->
            <!--<groupId>com.github.pagehelper</groupId>-->
            <!--<artifactId>pagehelper</artifactId>-->
            <!--<version>4.0.0</version>-->
        <!--</dependency>-->
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

</project>

四、数据库介绍





五、程序截图

1.管理员




2.教师







3.学生


六、联系与交流

复制代码
q:969060742 完整代码、sql、项目辅导视频
相关推荐
梨落秋霜12 小时前
Python入门篇【文件处理】
android·java·python
源心锁12 小时前
👋 手搓 gzip 实现的文件分块压缩上传
前端·javascript
Java 码农12 小时前
RabbitMQ集群部署方案及配置指南03
java·python·rabbitmq
哈库纳玛塔塔12 小时前
放弃 MyBatis,拥抱新一代 Java 数据访问库
java·开发语言·数据库·mybatis·orm·dbvisitor
木子.李34713 小时前
ssh连接远程服务器相关总结
运维·服务器·ssh
源心锁13 小时前
丧心病狂!在浏览器全天候记录用户行为排障
前端·架构
GIS之路13 小时前
GDAL 实现投影转换
前端
烛阴13 小时前
从“无”到“有”:手动实现一个 3D 渲染循环全过程
前端·webgl·three.js
S***q37713 小时前
Spring Boot管理用户数据
java·spring boot·后端
BD_Marathon13 小时前
SpringBoot——辅助功能之切换web服务器
服务器·前端·spring boot