博主介绍:
✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W+粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台的优质作者。通过长期分享和实战指导,我致力于帮助更多学生完成毕业项目和技术提升。技术范围:
我熟悉的技术领域涵盖SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等方面的设计与开发。如果你有任何技术难题,我都乐意与你分享解决方案。主要内容:
我的服务内容包括:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文撰写与辅导、论文降重、长期答辩答疑辅导。我还提供腾讯会议一对一的专业讲解和模拟答辩演练,帮助你全面掌握答辩技巧与代码逻辑。🍅获取源码请在文末联系我🍅
温馨提示:文末有 CSDN 平台官方提供的阿龙联系方式的名片!
温馨提示:文末有 CSDN 平台官方提供的阿龙联系方式的名片!
2.1 JSP技术
JSP(Java脚本页面)是Sun和许多参与建立的公司所提倡的动态web技术。将Java程序添加到传统的web页面HTML文件(*)。htm,*。Html)。
JSP这种能够独立使用的编程语言可以嵌入在html语言里面运行,正因为JSP参照了许多编程语言的特性,使得JSP在web的脚本技术当中也占有一定的重要位置,对于刚入门编程行业的初学者来讲,jsp这种编程语言不仅容易学习,而且还具备许多高级的特性[7]。在程序的开发过程中,使用jsp也不失为一种正确的选择,像表单数据的收集操作以及字符串信息的处理方面等等,jsp都能很轻松地解决,这样节省程序开发员开发设计的时间,JSP 最大的特点就是操作简单,并且具有很好的面向对象性,因此很多的系统开发设计都喜欢用jsp技术。同时,设计开发时,有两种选择,一种是面向过程,另一种是面向对象,或者也可以两种都使用,可以称为混和方式设计。
2.2 JAVA简介
JAVA语言是目前软件市场上应用最广泛的语言开发程序。可以在多种平台上运用的,兼容性比较强,适应市面上大多数操作系统,不会出现乱码的现像,其扩展性和维护性都更好,具有分析问题和解决问题的能力,是面向过程的程序设计方便我们编写的代码更强壮。
JAVA相对其它语言来说,比较简单,编译起来更方便一些,安全可靠性高。不完全统计,现在全世界大约有2000多万人在使用它,JAVA既可以镶嵌使用又可以独力的使用。JAVA大致可以分成两个部分,一种部分是JAVA负责的编译,另一种是JAVA负责的运行。JAVA和C++语言很相像,但JAVA在编程时是一种以对象为导向的方式来进行编译的,使得编出来的软件可以单机使用,也可以在互联网上使用,检查出错更为方便。JAVA分布式、体系结构中立的特点也使得其存储更快,编议更简单。面向对象包括四个特点,一是封装,就是说在定义类的时候可以实现一定的功能和属性。二是抽象,属于类的一种,可以把一个具有共同属性的类封装在一个抽象里,便于简单编议。三是继承,顾名思义就是带有前者的特性。还有一个就是多态的特点,可以多种一起运用,表现了它可扩展性好[8]。
2.3 MYSQL数据库
网站的开发必须配套相应数据库,数据库具有一定的组织结构,能够存放和管理数据信息,在以前数据库的功能仅仅是数据保存和管理操作,但是时代的变迁和发展,现在的数据库演变成了数据处理的方式,数据库从最开始的简单存放数据表格信息到现在的能够存放成千上万数据的大型数据库,期间还是经历了许多的改革。
本次开发的计算机考试系统设计使用的数据库是MYSQL数据库,该数据库运行速度快,安全性能也很高,而且对使用的平台没有任何的限制,所以被广泛应运到系统的开发中。MySQL是一个开源和多线程的关系管理数据库系统,MySQL是开放源代码的数据库,具有跨平台性,虽然功能未必强大,导致很多人都了解这个数据库的基本应用,在数据库中,总共建立了10几个表,这里面每个表都是相对应的,都各自有各自的联系,数据库意义重大,如果没有数据库的链接,就没办法运行程序,这显然可以看见数据库与程序的重要性,是紧密相连接的[9]。
2.4 B/S结构
B/S(浏览器/服务器)结构是目前主流的网络化的结构模式,它能够把系统核心功能集中在服务器上面,可以帮助系统开发人员简化操作,便于维护和使用。只需要学生在学生端安装360浏览器、谷歌浏览器、QQ浏览器等当前大众浏览器,在电脑里面安装sqlserver、mysql数据库等数据库[10]。安装好的浏览器与服务器端的数据库进行信息数据的交互。很多专门软件能够做到的事情,采用B/S结构模式也能实现,它能够结合Web浏览器技术,ActiveX技术以及多种脚本语言等技术。帮助程序开发者节约了不少开发成本。目前B/S结构成为程序开发主流结构,它最好的地方就是没有地点限制还不用专门安装软件,笔记本或者电脑能够上网就能访问系统。系统使用B/S进行开发在后期系统维护上面就会很省事,不用什么问题都在服务器上面操作,简单的学生端处理就解决部分问题,开发出来的程序跟学生交互性上面也会增强,还可以实时刷新浏览器进行程序局部的数据信息更新。
/*
SQLyog Ultimate v12.5.0 (64 bit)
MySQL - 5.7.28-log : Database - gitea
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`gitea` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `gitea`;
/*Table structure for table `config` */
DROP TABLE IF EXISTS `config`;
CREATE TABLE `config` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`name` varchar(100) NOT NULL COMMENT '配置参数名称',
`value` varchar(100) DEFAULT NULL COMMENT '配置参数值',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8 COMMENT='配置文件';
/*Data for the table `config` */
insert into `config`(`id`,`name`,`value`) values
(1,'picture1','http://localhost:8080/jspmd75st/upload/picture1.jpg'),
(2,'picture2','http://localhost:8080/jspmd75st/upload/picture2.jpg'),
(3,'picture3','http://localhost:8080/jspmd75st/upload/picture3.jpg'),
(6,'homepage',NULL);
/*Table structure for table `exampaper` */
DROP TABLE IF EXISTS `exampaper`;
CREATE TABLE `exampaper` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`name` varchar(200) NOT NULL COMMENT '试卷名称',
`time` int(11) NOT NULL COMMENT '考试时长(分钟)',
`status` int(11) NOT NULL DEFAULT '0' COMMENT '试卷状态',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1612699377837 DEFAULT CHARSET=utf8 COMMENT='试卷表';
/*Data for the table `exampaper` */
insert into `exampaper`(`id`,`addtime`,`name`,`time`,`status`) values
(1612699377836,'2022-03-12 20:02:56','Javaweb竞赛考试',100,1);
/*Table structure for table `examquestion` */
DROP TABLE IF EXISTS `examquestion`;
CREATE TABLE `examquestion` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`paperid` bigint(20) NOT NULL COMMENT '所属试卷id(外键)',
`papername` varchar(200) NOT NULL COMMENT '试卷名称',
`questionname` varchar(200) NOT NULL COMMENT '试题名称',
`options` longtext COMMENT '选项,json字符串',
`score` bigint(20) DEFAULT '0' COMMENT '分值',
`answer` varchar(200) DEFAULT NULL COMMENT '正确答案',
`analysis` longtext COMMENT '答案解析',
`type` bigint(20) DEFAULT '0' COMMENT '试题类型,0:单选题 1:多选题 2:判断题 3:填空题(暂不考虑多项填空)',
`sequence` bigint(20) DEFAULT '100' COMMENT '试题排序,值越大排越前面',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1612699467640 DEFAULT CHARSET=utf8 COMMENT='试题表';
/*Data for the table `examquestion` */
insert into `examquestion`(`id`,`addtime`,`paperid`,`papername`,`questionname`,`options`,`score`,`answer`,`analysis`,`type`,`sequence`) values
(1612699404380,'2022-03-12 20:03:24',1612699377836,'Javaweb竞赛考试','发多少给对方是个改的','[{\"text\":\"多个的sdf\",\"code\":\"A\"},{\"text\":\" 稍等还是得\",\"code\":\"B\"},{\"text\":\"发给回复\",\"code\":\"C\"},{\"text\":\"打分回复\",\"code\":\"D\"}]',2,'A','FG HDF H放到花费多个',0,1),
(1612699430133,'2022-03-12 20:03:49',1612699377836,'Javaweb竞赛考试','打分广东佛山给对方是个是打分','[{\"text\":\"水电费个\",\"code\":\"A\"},{\"text\":\"水电费广东佛山\",\"code\":\"B\"},{\"text\":\"水电费广东佛山\",\"code\":\"C\"},{\"text\":\"水电费改的\",\"code\":\"D\"}]',2,'A,B','的飞洒广东省分公司的',1,2),
(1612699442186,'2022-03-12 20:04:01',1612699377836,'Javaweb竞赛考试','萨芬撒地方盛大发售','[{\"text\":\"A.对\",\"code\":\"A\"},{\"text\":\"B.错\",\"code\":\"B\"}]',2,'A','发多少高大上发给是大法官萨德',2,3),
(1612699467639,'2022-03-12 20:04:26',1612699377836,'Javaweb竞赛考试','发货放到花费多个好地方规划梵蒂冈','[]',2,'放到花费多个回复的好','发很反感的花费多个回复的',3,4);
/*Table structure for table `examrecord` */
DROP TABLE IF EXISTS `examrecord`;
CREATE TABLE `examrecord` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`userid` bigint(20) NOT NULL COMMENT '用户id',
`username` varchar(200) DEFAULT NULL COMMENT '用户名',
`paperid` bigint(20) NOT NULL COMMENT '试卷id(外键)',
`papername` varchar(200) NOT NULL COMMENT '试卷名称',
`questionid` bigint(20) NOT NULL COMMENT '试题id(外键)',
`questionname` varchar(200) NOT NULL COMMENT '试题名称',
`options` longtext COMMENT '选项,json字符串',
`score` bigint(20) DEFAULT '0' COMMENT '分值',
`answer` varchar(200) DEFAULT NULL COMMENT '正确答案',
`analysis` longtext COMMENT '答案解析',
`myscore` bigint(20) NOT NULL DEFAULT '0' COMMENT '试题得分',
`myanswer` varchar(200) DEFAULT NULL COMMENT '考生答案',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1612699546226 DEFAULT CHARSET=utf8 COMMENT='考试记录表';
/*Data for the table `examrecord` */
insert into `examrecord`(`id`,`addtime`,`userid`,`username`,`paperid`,`papername`,`questionid`,`questionname`,`options`,`score`,`answer`,`analysis`,`myscore`,`myanswer`) values
(1612699529826,'2022-03-12 20:05:29',1612699505382,NULL,1612699377836,'Javaweb竞赛考试',1612699404380,'发多少给对方是个改的','[{\"text\":\"多个的sdf\",\"code\":\"A\"},{\"text\":\" 稍等还是得\",\"code\":\"B\"},{\"text\":\"发给回复\",\"code\":\"C\"},{\"text\":\"打分回复\",\"code\":\"D\"}]',2,'A','FG HDF H放到花费多个',0,'B'),
(1612699538895,'2022-03-12 20:05:38',1612699505382,NULL,1612699377836,'Javaweb竞赛考试',1612699430133,'打分广东佛山给对方是个是打分','[{\"text\":\"水电费个\",\"code\":\"A\"},{\"text\":\"水电费广东佛山\",\"code\":\"B\"},{\"text\":\"水电费广东佛山\",\"code\":\"C\"},{\"text\":\"水电费改的\",\"code\":\"D\"}]',2,'A,B','的飞洒广东省分公司的',0,'A,C'),
(1612699543800,'2022-03-12 20:05:43',1612699505382,NULL,1612699377836,'Javaweb竞赛考试',1612699442186,'萨芬撒地方盛大发售','[{\"text\":\"A.对\",\"code\":\"A\"},{\"text\":\"B.错\",\"code\":\"B\"}]',2,'A','发多少高大上发给是大法官萨德',0,'B'),
(1612699546225,'2022-03-12 20:05:46',1612699505382,NULL,1612699377836,'Javaweb竞赛考试',1612699467639,'发货放到花费多个好地方规划梵蒂冈','[]',2,'放到花费多个回复的好','发很反感的花费多个回复的',0,'DFS GSDFG ');
/*Table structure for table `kaoshichengjitongji` */
DROP TABLE IF EXISTS `kaoshichengjitongji`;
CREATE TABLE `kaoshichengjitongji` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`kemubianhao` varchar(200) DEFAULT NULL COMMENT '科目编号',
`kaoshimingcheng` varchar(200) DEFAULT NULL COMMENT '考试名称',
`zuigaofen` varchar(200) DEFAULT NULL COMMENT '最高分',
`zuidifen` varchar(200) DEFAULT NULL COMMENT '最低分',
`pingjunfen` varchar(200) DEFAULT NULL COMMENT '平均分',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1612699596506 DEFAULT CHARSET=utf8 COMMENT='考试成绩统计';
/*Data for the table `kaoshichengjitongji` */
insert into `kaoshichengjitongji`(`id`,`addtime`,`kemubianhao`,`kaoshimingcheng`,`zuigaofen`,`zuidifen`,`pingjunfen`) values
(31,'2022-03-12 19:46:00','科目编号1','Javaweb竞赛考试','最高分1','最低分1','平均分1'),
(32,'2022-03-12 19:46:00','科目编号2','Javaweb竞赛考试1','最高分2','最低分2','平均分2'),
(33,'2022-03-12 19:46:00','科目编号3','Javaweb竞赛考试2','最高分3','最低分3','平均分3'),
(34,'2022-03-12 19:46:00','科目编号4','Javaweb竞赛考试4','最高分4','最低分4','平均分4'),
(35,'2022-03-12 19:46:00','科目编号5','Javaweb竞赛考试5','最高分5','最低分5','平均分5'),
(36,'2022-03-12 19:46:00','科目编号6','Javaweb竞赛考试6','最高分6','最低分6','平均分6'),
(1612699596505,'2022-03-12 20:06:36','1612699334','Javaweb竞赛考试7','20','2','10');
/*Table structure for table `kaoshikemu` */
DROP TABLE IF EXISTS `kaoshikemu`;
CREATE TABLE `kaoshikemu` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`kemubianhao` varchar(200) DEFAULT NULL COMMENT '科目编号',
`kaoshimingcheng` varchar(200) DEFAULT NULL COMMENT '考试名称',
`kaoshishijian` datetime DEFAULT NULL COMMENT '考试时间',
PRIMARY KEY (`id`),
UNIQUE KEY `kemubianhao` (`kemubianhao`)
) ENGINE=InnoDB AUTO_INCREMENT=1612699349902 DEFAULT CHARSET=utf8 COMMENT='考试科目';
/*Data for the table `kaoshikemu` */
insert into `kaoshikemu`(`id`,`addtime`,`kemubianhao`,`kaoshimingcheng`,`kaoshishijian`) values
(21,'2022-03-12 19:45:59','科目编号1','Javaweb竞赛考试','2022-03-12 19:45:59'),
(22,'2022-03-12 19:45:59','科目编号2','css竞赛考试','2022-03-12 19:45:59'),
(23,'2022-03-12 19:45:59','科目编号3','html竞赛考试','2022-03-12 19:45:59'),
(24,'2022-03-12 19:46:00','科目编号4','springboot竞赛考试','2022-03-12 19:46:00'),
(25,'2022-03-12 19:46:00','科目编号5','mybatis竞赛考试','2022-03-12 19:46:00'),
(26,'2022-03-12 19:46:00','科目编号6','SPRING竞赛考试','2022-03-12 19:46:00'),
(1612699247109,'2022-03-12 20:00:46','1612699234','PHP竞赛考试','2022-03-12 20:00:34'),
(1612699349901,'2022-03-12 20:02:29','1612699334','Jsp竞赛考试','2022-03-20 09:00:13');
/*Table structure for table `token` */
DROP TABLE IF EXISTS `token`;
CREATE TABLE `token` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`userid` bigint(20) NOT NULL COMMENT '用户id',
`username` varchar(100) NOT NULL COMMENT '用户名',
`tablename` varchar(100) DEFAULT NULL COMMENT '表名',
`role` varchar(100) DEFAULT NULL COMMENT '角色',
`token` varchar(200) NOT NULL COMMENT '密码',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
`expiratedtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '过期时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='token表';
/*Data for the table `token` */
insert into `token`(`id`,`userid`,`username`,`tablename`,`role`,`token`,`addtime`,`expiratedtime`) values
(1,1,'abo','users','管理员','sh4r4yb4ccgpar2gjj1v9e63xufs9dli','2022-03-12 19:59:59','2022-03-13 10:28:20'),
(2,1612699505382,'123','xuesheng','学生','odfqqzodhxgmoypc6or4mmpa1yermnug','2022-03-12 20:05:12','2022-03-13 10:29:21');
/*Table structure for table `users` */
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`username` varchar(100) NOT NULL COMMENT '用户名',
`password` varchar(100) NOT NULL COMMENT '密码',
`role` varchar(100) DEFAULT '管理员' COMMENT '角色',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '新增时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='用户表';
/*Data for the table `users` */
insert into `users`(`id`,`username`,`password`,`role`,`addtime`) values
(1,'abo','abo','管理员','2022-03-12 19:46:00');
/*Table structure for table `xuesheng` */
DROP TABLE IF EXISTS `xuesheng`;
CREATE TABLE `xuesheng` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',
`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`kaoshengbianhao` varchar(200) NOT NULL COMMENT '考生编号',
`mima` varchar(200) DEFAULT NULL COMMENT '密码',
`kaoshengxingming` varchar(200) DEFAULT NULL COMMENT '考生姓名',
`xingbie` varchar(200) DEFAULT NULL COMMENT '性别',
`chushengriqi` date DEFAULT NULL COMMENT '出生日期',
`lianxidianhua` varchar(200) DEFAULT NULL COMMENT '联系电话',
`shenfenzheng` varchar(200) DEFAULT NULL COMMENT '身份证',
`youxiang` varchar(200) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY (`id`),
UNIQUE KEY `kaoshengbianhao` (`kaoshengbianhao`)
) ENGINE=InnoDB AUTO_INCREMENT=1612699505383 DEFAULT CHARSET=utf8 COMMENT='学生';
/*Data for the table `xuesheng` */
insert into `xuesheng`(`id`,`addtime`,`kaoshengbianhao`,`mima`,`kaoshengxingming`,`xingbie`,`chushengriqi`,`lianxidianhua`,`shenfenzheng`,`youxiang`) values
(11,'2022-03-12 19:45:59','学生1','123456','考生姓名1','男','2022-03-12','13823888881','440300199101010001','773890001@qq.com'),
(12,'2022-03-12 19:45:59','学生2','123456','考生姓名2','男','2022-03-12','13823888882','440300199202020002','773890002@qq.com'),
(13,'2022-03-12 19:45:59','学生3','123456','考生姓名3','男','2022-03-12','13823888883','440300199303030003','773890003@qq.com'),
(14,'2022-03-12 19:45:59','学生4','123456','考生姓名4','男','2022-03-12','13823888884','440300199404040004','773890004@qq.com'),
(15,'2022-03-12 19:45:59','学生5','123456','考生姓名5','男','2022-03-12','13823888885','440300199505050005','773890005@qq.com'),
(16,'2022-03-12 19:45:59','学生6','123456','考生姓名6','男','2022-03-12','13823888886','440300199606060006','773890006@qq.com'),
(1612699505382,'2022-03-12 20:05:05','123','123','放到',NULL,NULL,'13455667788','334455667788998877','4564564@qq.com');
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
为什么选择我(我可以给你的定制项目推荐核心功能,一对一推荐)实现定制!!!
博主提供的项目均为博主自己收集和开发的!所有的源码都经由博主检验过,能过正常启动并且功能都没有问题!同学们拿到后就能使用!且博主自身就是高级开发,可以将所有的代码都清晰讲解出来。
源码获取
文章下方名片联系我即可~
大家点赞、收藏、关注、评论啦 、查看👇🏻获取联系方式👇🏻
精彩专栏推荐订阅:在下方专栏