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、项目辅导视频
相关推荐
a1117762 小时前
医院挂号预约系统(开源 Fastapi+vue2)
前端·vue.js·python·html5·fastapi
0思必得02 小时前
[Web自动化] Selenium处理iframe和frame
前端·爬虫·python·selenium·自动化·web自动化
virus59452 小时前
悟空CRM mybatis-3.5.3-mapper.dtd错误解决方案
java·开发语言·mybatis
pride.li2 小时前
开发板和Linux--nfs服务挂载
linux·运维·服务器
looking_for__2 小时前
【Linux】应用层协议
linux·服务器·网络
没差c3 小时前
springboot集成flyway
java·spring boot·后端
时艰.3 小时前
Java 并发编程之 CAS 与 Atomic 原子操作类
java·开发语言
云泽8083 小时前
不止是命令:Linux 高频指令实战 + 芯片架构底层逻辑
linux·运维·服务器
j_xxx404_4 小时前
Linux:基础IO
linux·运维·服务器
行走的陀螺仪4 小时前
uni-app + Vue3编辑页/新增页面给列表页传参
前端·vue.js·uni-app