最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot +Vue開發(fā)考試系統(tǒng)的教程

 更新時(shí)間:2020年05月26日 09:56:58   作者:不安分的猿人  
這篇文章主要介紹了SpringBoot +Vue開發(fā)考試系統(tǒng),支持多種題型:選擇題、多選題、判斷題、填空題、綜合題以及數(shù)學(xué)公式。支持在線考試,教師在線批改試卷。本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下

一、考試系統(tǒng)簡介

新鮮出爐的一款SpringBoot +Vue的考試系統(tǒng),支持多種題型:選擇題、多選題、判斷題、填空題、綜合題以及數(shù)學(xué)公式。支持在線考試,教師在線批改試卷。

二、項(xiàng)目架構(gòu)

后端技術(shù)棧

  • SpringBoot: SpringBoot是由Pivotal團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來簡化Spring應(yīng)用的創(chuàng)建、運(yùn)行、調(diào)試、部署等。
  • Mybatis: 一個(gè)持久層的框架,與數(shù)據(jù)庫進(jìn)行交互,將數(shù)據(jù)持久化到關(guān)系型數(shù)據(jù)庫中
  • Shiro: 一個(gè)功能強(qiáng)大且易于使用的Java安全框架,進(jìn)行身份驗(yàn)證,授權(quán),加密和會(huì)話管理,可用于保護(hù)任何應(yīng)用程序- 從命令行應(yīng)用程序,移動(dòng)應(yīng)用程序到大型的Web應(yīng)用和企業(yè)應(yīng)用。
  • mysql: 一個(gè)輕量級(jí)關(guān)系型數(shù)據(jù)庫管理系統(tǒng),由瑞典MySQL AB公司開發(fā),目前屬于Oracle公司。
  • redis: 一個(gè)完全開源免費(fèi)的,遵守BSD協(xié)議,是一個(gè)高性能的key-value數(shù)據(jù)庫。

前端技術(shù)

  • Vue: 一套用于構(gòu)建用戶界面的漸進(jìn)式框架。 與其它大型框架不同的是,Vue 被設(shè)計(jì)為可以自底向上逐層應(yīng)用。
  • Vuex: 一個(gè)專為Vue.js 應(yīng)用程序開發(fā)的狀態(tài)管理模式。 它采用集中式存儲(chǔ)管理應(yīng)用的所有組件的狀態(tài),并以相應(yīng)的規(guī)則保證狀態(tài)以一種可預(yù)測的方式發(fā)生變化。
  • Element-UI: 一套為開發(fā)者、設(shè)計(jì)師和產(chǎn)品經(jīng)理準(zhǔn)備的基于Vue 2.0 的桌面端組件庫。
  • vue-router: Vue.js 官方的路由管理器。
  • axios: 一個(gè)基于Promise 的HTTP 庫,可以用在瀏覽器和node.js 中。

項(xiàng)目說明

考試系統(tǒng)整體為前后端分離項(xiàng)目,作者又在這基礎(chǔ)上,將后端拆分成兩個(gè)管理員后端和學(xué)生考試后端,后端的代碼是在一起。前端也做了類似的拆分,所以其實(shí)是兩個(gè)后端項(xiàng)目,兩個(gè)前端項(xiàng)目。本篇先講一下學(xué)生考試部分的前后端環(huán)境搭建。功能包括:學(xué)員在線做課程試題、在線考試、錯(cuò)題本功能記錄、考試記錄、個(gè)人中心。

后端項(xiàng)目地址

后端項(xiàng)目地址: https://gitee.com/zhuimengshaonian/wisdom-education

  • 管理員后臺(tái): education-admin-api
  • 學(xué)生考試后臺(tái): education-student-api

前端項(xiàng)目地址

三、實(shí)戰(zhàn)

3.1 后端服務(wù)

下載項(xiàng)目

git clone https://gitee.com/zhuimengshaonian/wisdom-education.git

初始化數(shù)據(jù)庫
創(chuàng)建數(shù)據(jù)庫education,執(zhí)行數(shù)據(jù)庫腳本。這里數(shù)據(jù)庫腳本在項(xiàng)目的db目錄下。

init-data.sql  #初始化數(shù)據(jù)
init-region.sql #初始化system_region
init-table.sql  #初始化表結(jié)構(gòu)

注意:system_log表少一個(gè)字段request_url,類型為varchar(100)
修改配置
閱讀項(xiàng)目配置文件可知,項(xiàng)目使用的prod的配置文件,所以我們直接看application-prod.yml文件即可。這里主要關(guān)注數(shù)據(jù)庫連接,再添加一下redis的配置。

server:
 port: 8001 #服務(wù)器端口
 servlet:
 context-path: /
#spring jdbc配置
spring:
#redis相關(guān)配置
 redis:
 jedis:
 pool:
 max-active: 8
 max-wait: 30
 max-idle: 8
 min-idle: 0
 port: 6379
 host: localhost
 password: 123456
#數(shù)據(jù)庫連接
 datasource:
 url: jdbc:mysql://localhost:3306/education?serverTimezone=GMT%2B8&useSSL=true&useUnicode=true&characterEncoding=utf8
 username: root
 password: 123456
 driver-class-name: com.mysql.cj.jdbc.Driver

運(yùn)行Application
運(yùn)行EducationStudentApiApplication類,即可本地啟動(dòng)后端服務(wù)。

3.2 前端服務(wù)

下載項(xiàng)目

git clone https://gitee.com/zhuimengshaonian/wisdom-education-front.git

修改配置

用開發(fā)工具打開前端項(xiàng)目,這里我用的VSCode,打開config/index.js,這里主要修改一下proxyTable的內(nèi)容:

proxyTable: {
 '/proxyApi': {
 target: 'http://localhost:8001',
 changeOrigin: true,
 pathRewrite: {
 '/proxyApi': 'http://localhost:8001'
 }
 }
 }
 

運(yùn)行項(xiàng)目
在命令行窗口,或者VSCode終端執(zhí)行下面命令就可以本地運(yùn)行項(xiàng)目。

npm install #安裝依賴
npm run dev #開發(fā)環(huán)境啟動(dòng),默認(rèn)http://localhost:8080/

要在服務(wù)端部署項(xiàng)目,執(zhí)行下面打包命令,然后使用web容器部署即可。

npm run build #項(xiàng)目打包
npm run build --report #項(xiàng)目打包并輸出分析報(bào)告

3.3 運(yùn)行效果

瀏覽器訪問http://localhost:8080,默認(rèn)用戶密碼: student 123456,就可以直接登錄了。

運(yùn)行效果:

四、最后

項(xiàng)目具備了考試系統(tǒng)基本功能,本篇講了學(xué)生考試部分的前后端的搭建。另外比較重要的一部分就是管理員前端項(xiàng)目,本人不是專業(yè)搞前端的,還沒搞定管理員前端項(xiàng)目,嘗試過程中也遇到了很多問題,F(xiàn)AQ做個(gè)記錄。遇到問題其實(shí)也不可怕,合理利用搜索引擎 + 開啟大腦思考功能,辦法總比困難多嘛!我相信問題一定可以解決的。下篇講考試系統(tǒng)的管理員部分的前后端搭建。

FAQ

1.npm install 報(bào)錯(cuò):Error: Can't find Python executable "python", you can set the PYTHON env variable。
解決版方法:執(zhí)行 npm install -g windows-build-tools命令
2.window環(huán)境下npm install node-sass報(bào)錯(cuò)的解決方法。
解決方法:http://m.fzitv.net/article/129081.htm
3.Windows下安裝前端項(xiàng)目,node-sass報(bào)錯(cuò)。
解決方法:npm install node-sass@4.12.0 --save
4.Vue packages version mismatch:vue@2.5.16, vue-template-compiler@2.5.2。
解決辦法:保持版本一致:npm install vue@2.5.2 --save
5.How to fix ReferenceError: primordials is not defined in node。
解決方法:npm -g install gulp-cli

總結(jié)

到此這篇關(guān)于SpringBoot +Vue開發(fā)考試系統(tǒng)的文章就介紹到這了,更多相關(guān)springboot vue 考試系統(tǒng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java數(shù)據(jù)結(jié)構(gòu)之順序表和鏈表精解

    Java數(shù)據(jù)結(jié)構(gòu)之順序表和鏈表精解

    我在學(xué)習(xí)完順序表后一直對(duì)順序表和鏈表的概念存在一些疑問,這里給出一些分析和看法,通讀本篇對(duì)大家的學(xué)習(xí)或工作具有一定的價(jià)值,需要的朋友可以參考下
    2021-09-09
  • 關(guān)于maven項(xiàng)目引入maven庫沒有的jar處理辦法

    關(guān)于maven項(xiàng)目引入maven庫沒有的jar處理辦法

    這篇文章主要介紹了關(guān)于maven項(xiàng)目引入maven庫沒有的jar處理辦法,在平時(shí)開發(fā)中,有些jar包是不存在maven中央庫中的,那么此時(shí)該如何解決才能方便后續(xù)處理呢,需要的朋友可以參考下本文
    2023-03-03
  • 初探Java內(nèi)部類的使用

    初探Java內(nèi)部類的使用

    Java內(nèi)部類一般可以分為以下三種:成員內(nèi)部類、靜態(tài)內(nèi)部類和匿名內(nèi)部類。這篇文章主要帶大家初探一下Java內(nèi)部類的使用,感興趣的可以了解一下
    2022-09-09
  • spring boot集成pagehelper(兩種方式)

    spring boot集成pagehelper(兩種方式)

    這篇文章主要介紹了spring boot集成pagehelper(兩種方式),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-01-01
  • Mybatis-Plus之ID自動(dòng)增長的設(shè)置實(shí)現(xiàn)

    Mybatis-Plus之ID自動(dòng)增長的設(shè)置實(shí)現(xiàn)

    本文主要介紹了Mybatis-Plus之ID自動(dòng)增長的設(shè)置實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Spring自動(dòng)裝配bean的方式總結(jié)

    Spring自動(dòng)裝配bean的方式總結(jié)

    這篇主要介紹了Spring自動(dòng)裝配Bean的方式總結(jié),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2024-01-01
  • javaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)

    javaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了javaWeb實(shí)現(xiàn)學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Spring啟動(dòng)后獲取所有擁有特定注解的Bean實(shí)例代碼

    Spring啟動(dòng)后獲取所有擁有特定注解的Bean實(shí)例代碼

    這篇文章主要介紹了Spring啟動(dòng)后獲取所有擁有特定注解的Bean實(shí)例代碼,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • java8版本base64加密解密的實(shí)例

    java8版本base64加密解密的實(shí)例

    下面小編就為大家分享一篇java8版本base64加密解密的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • Spring AOP方法內(nèi)部調(diào)用不生效的解決方案

    Spring AOP方法內(nèi)部調(diào)用不生效的解決方案

    最近有個(gè)需求,統(tǒng)計(jì)某個(gè)方法的調(diào)用次數(shù),開始使用 Spring AOP 實(shí)現(xiàn),后來發(fā)現(xiàn)當(dāng)方法被內(nèi)部調(diào)用時(shí),切面邏輯將不會(huì)生效,所以本文就給大家介紹了Spring AOP方法內(nèi)部調(diào)用不生效的解決方案,需要的朋友可以參考下
    2025-01-01

最新評(píng)論

蛟河市| 临清市| 莲花县| 金沙县| 文安县| 宁强县| 灯塔市| 浪卡子县| 临沭县| 双鸭山市| 嘉定区| 论坛| 沈丘县| 门源| 杨浦区| 桑植县| 拜城县| 邵武市| 巴中市| 大洼县| 外汇| 新建县| 安岳县| 壤塘县| 玉溪市| 正安县| 平顺县| 南汇区| 江口县| 安顺市| 巢湖市| 昌黎县| 肇州县| 南平市| 乌苏市| 宣威市| 安平县| 宁国市| 定边县| 海城市| 西安市|