idea Springboot 组卷管理系统LayUI框架开发mysql数据库web结构java编程计算机网页
一、源码特点
springboot 组卷管理系统是一套完善的完整信息系统,结合mvc框架和LayUI框架完成本系统springboot spring mybatis ,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。
前段主要技术 css jquery LayUI框架
后端主要技术 Springboot spring mybatis
数据库 mysql
开发工具 IDEA JDK1.8
springboot 组卷管理系统
二、功能介绍
(1)教师管理:对教师信息进行添加、删除、修改和查看
(2)管理员管理:对管理员信息进行添加、删除、修改和查看
(3)科目管理:对科目信息进行添加、删除、修改和查看
(4)试题类型管理:对试题类型信息进行添加、删除、修改和查看
(5)试题管理:对试题信息进行添加、删除、修改和查看
(6)试卷管理:对试卷信息进行添加、删除、修改和查看、预览、导出
(7)组卷管理:对组卷信息进行添加、删除、修改和查看、自动组卷
(8)用户登录、个人信息修改
数据库设计
(1)教师信息表如表5.1所示:
表5.1 教师信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | jsid | INTEGER | 11 | 是 | 教师编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |
| 5 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
(2)管理员如表5.2所示:
表5.2 管理员表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | glyid | INTEGER | 11 | 是 | 管理员编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |
(3)科目表如表5.3所示:
表5.3 科目表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | kmid | INTEGER | 11 | 是 | 科目编号 |
| 2 | km | VARCHAR | 40 | 否 | 科目 |
| 3 | fzjs | VARCHAR | 40 | 否 | 负责教师 |
(4)试题类型表如表5.4所示:
表5.4 试题类型信息表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | stlxid | INTEGER | 11 | 是 | 试题类型编号 |
| 2 | lx | VARCHAR | 40 | 否 | 类型 |
(5)试题表如表5.5所示:
表5.5 试题表
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | stid | INTEGER | 11 | 是 | 试题编号 |
| 2 | stmc | VARCHAR | 40 | 否 | 试题名称 |
| 3 | lx | VARCHAR | 40 | 否 | 类型 |
| 4 | nd | VARCHAR | 40 | 否 | 难度 |
| 5 | km | VARCHAR | 40 | 否 | 科目 |
| 6 | ms | VARCHAR | 40 | 否 | 描述 |
| 7 | zsd | VARCHAR | 40 | 否 | 知识点 |
| 8 | tp | VARCHAR | 40 | 否 | 图片 |
代码设计
/**组卷列表 查询zujuan* */@RequestMapping(value = "listpage")public ModelAndView listpage(HttpServletRequest request, HttpServletResponse response) {try {request.setCharacterEncoding("gb2312");//强制字符集}catch(Exception e){e.printStackTrace();}Map<String,Object> map= new HashMap<String,Object>();ModelAndView mav = new ModelAndView();//初始化mav.setViewName("zujuan/zujuanlist");//跳转jsp 页面String zjid=(String)request.getParameter("zjid");if(zjid!=null&&!zjid.equals("")){//判断组卷编号// System.out.println(zjid);map.put("zjid",zjid);//拼接sql语句组卷编号}String st=(String)request.getParameter("st");if(st!=null&&!st.equals("")){//判断试题// System.out.println(st);map.put("st",st);//拼接sql语句试题}String sj=(String)request.getParameter("sj");if(sj!=null&&!sj.equals("")){//判断试卷// System.out.println(sj);map.put("sj",sj);//拼接sql语句试卷}String fz=(String)request.getParameter("fz");if(fz!=null&&!fz.equals("")){//判断分值// System.out.println(fz);map.put("fz",fz);//拼接sql语句分值}if(request.getSession().getAttribute("yhm")!=null){map.put("yh",request.getSession().getAttribute("yh"));//拼接sql语句分值}List<zujuan> list=zujuandao.getAll(map);//查询zujuan 表数据返回 list对象mav.addObject("list",list);//赋值变量return mav;}/**组卷添加方法 对表 zujuan 进行批量自动添加**/@RequestMapping(value = "zidong")public ModelAndView zidong(HttpServletRequest request, HttpServletResponse response){try {request.setCharacterEncoding("gb2312");//强制字符集}catch(Exception e){//捕获异常e.printStackTrace();}ModelAndView mav = new ModelAndView();//初始化mav.setViewName("zujuan/add");//跳转页面zujuan bean=new zujuan();String km=(String)request.getParameter("km");//组卷编号 变量String sj=(String)request.getParameter("sj");//试卷 变量// String fz=(String)request.getParameter("fz");//分值 变量String[] lx = request.getParameterValues("lx");//类型数组String[] nd = request.getParameterValues("nd");//难度数组String[] num = request.getParameterValues("num");//难度数组String[] fz = request.getParameterValues("fz");DBO db=new DBO();String sql="";ResultSet rs=null;int a=0;sql="";String nda="";int all=0;try{for(int i=0;i<lx.length;i++){//lx[i] 是类型nda="";a=Integer.parseInt(num[i]);if(nd[i]!=null){nda=nd[i];}if(a>0){sql="select * from shiti where km='"+km+"' and lx='"+lx[i]+"' ";if(!nda.equals("")){sql+=" and nd='"+nda+"'";}sql+="limit 0,"+a+"";System.out.println(sql);db.open();rs=db.query(sql);while(rs.next()){sql="insert into zujuan (sj,st,fz) values('"+sj+"','"+rs.getString("stid")+"','"+fz[i]+"')";db.open();db.update(sql);all=all+Integer.parseInt(fz[i]);}}}sql="update shijuan set zf=zf+"+all+" where sjid='"+sj+"'";db.open();db.update(sql);}catch(Exception e){e.printStackTrace();}finally {db.close();}request.setAttribute("msg", "<script>alert('自动组卷成功');</script>");//操作提示return mav;}
三、注意事项
1、管理员账号:admin密码:admin 数据库配置文件src\main\resources 下的 application.properties
2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。
3、数据库文件名是jspspexam.sql 系统名称spexam
4、地址:login.jsp
四 系统实现




下载地址:
https://download.csdn.net/download/qq_41221322/88942810
源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
相关文章:
idea Springboot 组卷管理系统LayUI框架开发mysql数据库web结构java编程计算机网页
一、源码特点 springboot 组卷管理系统是一套完善的完整信息系统,结合mvc框架和LayUI框架完成本系统springboot spring mybatis ,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整…...
wordpress主题批量修改历史文章标题,文章内容
:wordpress模板,在我映像中还是比较受欢迎的,至少它该有的插件都是应有尽有,不像帝国cms虽然功能多,但是基本用不上,而且很多会出错。也不像织梦cms漏洞太多,搞的建站期间出现很多其他事情&am…...
Unity2019.2.x 导出apk 安装到安卓Android12+及以上的系统版本 安装出现-108 安装包似乎无效的解决办法
Unity2019.2.x 导出apk 安装到安卓Android12及以上的系统版本 安装出现-108 安装包似乎无效的解决办法 导出AndroidStudio工程后 需要设置 build.gradle文件 // GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAINbuildscript {repositor…...
创建SpringCloudGateWay
创建SpringCloudGateWay 本案例基于尚硅谷《谷粒商城》项目,视频27 创建测试API网关 1、创建module 2、引入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:x…...
鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:StepperItem)
用作Stepper组件的页面子组件。 说明: 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 支持单个子组件。 接口 StepperItem() 属性 参数名参数类型参数描述prevLabelstring设置左侧文本按钮内…...
游戏盾SDK是如何实现智能加速的?
游戏盾SDK是一款能够提供内含windows、安卓、IOS版本的SDK下载,通过接入SDK,由SDK接管所有的通信流量,进行调度和加密传输,满足抗D、防C、流量加密等业务需求,为用户提供优质的网络环境,游戏极速畅通无阻。…...
西井科技参与IATA全球货运大会 以AI绿动能引领智慧空港新未来
3月12日至14日,由国际航空运输协会IATA主办的全球货运大会(World Cargo Symposium)在中国香港成功举办,这是全球航空货运领域最大规模与影响力的年度盛会。作为大物流领域全球领先的“智能化与新能源化”综合解决方案提供商&#…...
RPC通信原理(二)
RPC序列化 任何一种序列化框架,核心思想就是设计一种序列化协议,将对象的类型、属性类型、属性值一一按照固定的格式写到二进制字节流中来完成序列化,再按照固定的格式把数据一一读取出来,通过这些数据信息创建出一个新的对象&…...
Redis 淘汰策略
Redis 是一个使用键值对存储数据的内存中数据结构存储系统,它支持多种类型的数据结构,如字符串(strings),列表(lists),集合(sets),有序集合&#…...
游戏数据处理
游戏行业关键数据指标 ~ 总激活码发放量、总激活量、总登录账号数 激活率、激活登录率 激活率 激活量 / 安装量 激活率 激活量 / 激活码发放量 激活且登录率 激活且登录量 / 激活码激活量 激活且登录率应用场景 激活且登录率是非常常用的转化率指标之一,广泛…...
Qt+FFmpeg+opengl从零制作视频播放器-14.程序Ubuntu移植
首先查看的是Linux系统的版本,我使用的是Ubuntu20.04.6LTS版本。 去Qt官网下载Qt 的版本。 这里下载的是5.12.12版本,双击运行,然后安装好Qt。 回想一下,在之前的程序,我们都是在Windows上开发,仅仅使用Qt和ffmpeg,Qt前面的步骤运行完成就可以安装好了,所以在linux上…...
Go 语言中的 Cond 机制详解
概述 在并发编程中,条件同步是一个常见的需求。Go 语言提供了 sync.Cond 类型来满足这一需求。sync.Cond 基于互斥锁(sync.Mutex)提供了条件变量的同步机制,允许一组 goroutine 在满足某个条件时进行阻塞等待,或者在条…...
如何使用vue定义组件之——子组件调用父组件数据
1.定义父子模板template <div class"container"><my-father></my-father><my-father></my-father><my-father></my-father><!-- 此处无法调用子组件,子组件必须依赖于父组件进行展示 --><!-- <my-…...
如何使用ArcGIS Pro生成带计曲线等高线
等高线作为常见的地图要素经常会被使用到,一般情况下生成的等高线是不带计曲线的,在某些情况下我们需要带计曲线的等高线,这里为大家介绍一下ArcGIS Pro生成带计曲线等高线的方法,希望能对你有所帮助。 数据来源 教程所使用的数…...
蓝桥杯C++大学B组一个月冲刺记录2024/3/13
蓝桥杯C大学B组一个月冲刺记录2024/3/13 规则:每日三题 向日葵的花语是说不出的爱恋 不过今天有点水题了 1.有序分数 给定一个整数 N,请你求出所有分母小于或等于 N,大小在 [0,1] 范围内的最简分数,并按从小到大顺序依次输出。 这个题在被划…...
计算机网络——Internet结构和ISP
互联网结构:网络的网络 ISP:互联网服务提供商(Internet Service Provider,ISP)是指为用户提供互联网接入服务的组织或公司。ISP在互联网结构中扮演着关键的角色,它们通过建立网络基础设施和提供网络连接服…...
E.接龙数列【蓝桥杯】/动态规划
接龙数列 题目描述 对于一个长度为 K 的整数数列:A1, A2, . . . , AK,我们称之为接龙数列当且仅当 Ai 的首位数字恰好等于 Ai−1 的末位数字 (2 ≤ i ≤ K)。 例如 12, 23, 35, 56, 61, 11 是接龙数列;12, 23, 34, 56 不是接龙数列…...
cv2.cvtColor()将二维转化为彩色图像
我们如果要将一维的图像转化为三维的彩色图像 import cv2 img cv2.cvtColor(img.squeeze(0), cv2.COLOR_GRAY2BGR) 这里的img.squeeze为二维数据,img为三维数据,所以压缩掉一个维度 。这样就将图像转化为了三维彩色图像。 cv2.imshow(Image, img) c…...
为什么 VSCode 不用 Qt 而要用 Electron?
为什么 VSCode 不用 Qt 而要用 Electron? 在开始前我有一些资料,是我根据网友给的问题精心整理了一份「Qt 的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!&am…...
环信ChatroomUIKit功能详解——超详细介绍
聊天室是当下泛娱乐社交应用中最经典的玩法,通过调用环信的 IM SDK 接口,可以快速创建聊天室。如果想根据自己业务需求对聊天室应用的 UI界面、弹幕消息、礼物打赏系统等进行自定义设计,最高效的方式则是使用环信的 ChatroomUIKit 。 文档地址…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...
tomcat指定使用的jdk版本
说明 有时候需要对tomcat配置指定的jdk版本号,此时,我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...
CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...
Spring Security 认证流程——补充
一、认证流程概述 Spring Security 的认证流程基于 过滤器链(Filter Chain),核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤: 用户提交登录请求拦…...
TJCTF 2025
还以为是天津的。这个比较容易,虽然绕了点弯,可还是把CP AK了,不过我会的别人也会,还是没啥名次。记录一下吧。 Crypto bacon-bits with open(flag.txt) as f: flag f.read().strip() with open(text.txt) as t: text t.read…...
