前后端分离的开源在线考试系统调试实战

createh52个月前 (02-01)技术教程16

开篇

在我们的教育生涯中,或多或少的都接触过在线考试系统。例如大学里最常见的各种软件考试,上机考试等,那么有没有开源的这样的系统呢?当然是有了,今天就来调试个开源的在线考试系统。本文重点是调试,因为很多同学拿到源码也不知道怎么用。觉得有用,点赞收藏转发吧。需要源码的同学,请移步至文章末尾。

系统介绍

该在线考试系统是一款 java + vue 的前后端分离的考试系统。主要优点是开发、部署简单快捷,可水平拓展在多台服务器上做负载均衡。考试功能齐全,目前有web端和微信小程序,能覆盖到pc机和手机等设备。

系统分三个部分:1、学生系统功能 2、管理系统功能3、小程序学生系统功能。如下图,以下截图,来源于开源地址,具体可以到文章末尾拿开源地址后自己看。本文重点是调试实战。

系统技术栈

后台系统:spring-boot 2.1.6.RELEASE、spring-boot-security 用户登录验证、undertow web容器、postgresql/mysql 优秀的开源数据库、redis 缓存,提升系统性能、mybatis 数据库中间件、hikari 速度最快的数据库连接池、七牛云存储

前台系统:Vue.js 采用新版,使用了vue-cli3搭建的系统,减少大量配置文件、element-ui 最流行的vue组件,采用的最新版、vue-element-admin 最新版,对该系统做了大量精简,只保留了部分样式和控件、echarts 图表统计、ueditor 为了支持填空题,做了部分修改

微信小程序:iView 主题样式

核心调试

1、用git导入项目从开源地址,如下图所示。

导入后是这个样子的。包括,sql脚本,后端代码,前端代码,和小程序代码。

2、划重点:注意此开源系统分为,postgresql 版本和 mysql版本,看你需要哪个,就用哪个。我这里用的是mysql的。运行sql相关脚本。导入后如下图所示。

create database exam;
source exam.sql;

3、启动redis,并修改系统中相关配置

如下图:

下面的配置都改成自己的,当然如果mysql连接有问题,可以改一下mysql版本和连接配置:

useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull&serverTimezone=UTC

4、前端安装,前端是基于vue的。直接,然后启动即可。当然前端项目分为,管理端和学生端。

npm install
npm run serve

5、前后端连调。启动后端项目如下图。

6、可以了访问吧,下面是截了系统一些图,更多还是自己拿到源码自己搞吧。这里就不多截图了。

注意访问按前端启动的访问,例如admin访问的是localhost:81,学生考试端直接就是localhost了。

结语

好了,在线考试系统就调试到这里了,当然系统很不错。拿着就可以用,而且是MIT开源协议的。如果你需要源码开源地址,关注点赞转发,然后私信"20191127",我把开源源码地址发你。

当然我还调试了很多开源项目,有需要可以去看看

双十一光棍节调试一个商城必备功能,Java Springboot开源秒杀系统

Java 百分之百 开源的 基于Spring boot 的ERP 系统调试实战

Java 开源 的spring cloud 微服务 化 开发平台 调试实战

调试个开源Java 轻量级高性能IM,单机支持几十万至百万在线用户

前端牛人写的开源的CMS系统调试实战,流体布局兼容手机端浏览器

Java程序员也能迅速读懂区块链工作原理,以开源的区块链项目为例

相关文章

JavaWEB前端向服务器端发送对象(java向服务器发送数据)

最近项目中需要做一个关于批量删除的功能,删除条件有多个,需要从页面全部传给后台服务器程序,单个的删除,可以拼接参数给url,服务器端获取参数后执行删除操作即可。但是批量删除多个,参数会很多,传递就有些...

java-socket长连接demo体验(java tcp长连接)

作者:DavidDing 来源:https://zhuanlan.zhihu.com/p/56135195 一、前言最近公司在预研设备app端与服务端的交互方案,主要方案有:服务端和app端通过阿里i...

Java 中的 Http 客户端 API:身份验证

.介绍在本系列的第一部分(链接此处)中,介绍了 java http 客户端 API 的基本功能。现在我们将探讨当今应用程序中广泛使用的一些更常见的用例。我们将学习如何通过提供凭据来访问安全端点。基本认...

BsinCopilot:Java版端到端大语言模型开发框架

BsinCopilot是基于BsinPaaS开源框架构建的大语言模型应用SaaS服务,借鉴langchain的框架思想,引入 langchian4j组件,微前端微服务的架构设计,可快速助您构建和体验...

图文并茂,带你梳理一下 OAuth2.0 概念和授权流程

阅读目录OAuth2 的概念OAuth2授权模式授权码模式(Authorization Code Grant)隐式授权模式(Implicit Grant)密码模式(Resource Owner Pas...