idea Springboot 在线考试管理系统开发mysql数据库web结构java编程计算机网页

一、源码特点

springboot 在线考试管理系统是一套完善的完整信息系统,结合mvc框架和bootstrap完成本系统springboot spring mybatis ,对理解JSP java编程开发语言有帮助系统采用springboot框架(MVC模式开发),系统具有完整的源代码和数据库,系统主要采用B/S模式开发。

前段主要技术 css jquery

后端主要技术 Springboot spring mybatis

数据库 mysql

开发工具 IDEA JDK1.8

springboot 在线考试系统1

二、功能介绍

(1)管理员管理:对管理员信息进行添加、删除、修改和查看

(2)学生管理:对学生信息进行添加、删除、修改和查看

(3)教师管理:对教师信息进行添加、删除、修改和查看

(4)公告管理:对公告信息进行添加、删除、修改和查看

(5)难度管理:对难度信息进行添加、删除、修改和查看

(6)知识点管理:对知识点信息进行添加、删除、修改和查看

(7)章节管理:对章节信息进行添加、删除、修改和查看

(8)试题管理:对试题信息进行添加、删除、修改和查看

(9)试卷管理:对试卷信息进行添加、删除、修改和查看

(10)组卷管理:对组卷信息进行添加、删除、修改和查看

(11)成绩管理:对成绩信息进行删除、修改和查看,系统采取主观判卷的方式进行判定。

(12)答题管理:对答题信息进行删除、修改和查看

数据库设计

|----|-------|---------|----|----|-------|
| #### [表gly] 管理员列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | glyid | INTEGER | 11 | 是 | 管理员编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |

|----|------|---------|----|----|------|
| #### [表xuesheng] 学生列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | xsid | INTEGER | 11 | 是 | 学生编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |
| 5 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
| 6 | lxdz | VARCHAR | 40 | 否 | 联系地址 |

|----|------|---------|----|----|------|
| #### [表jiaoshi] 教师列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | jsid | INTEGER | 11 | 是 | 教师编号 |
| 2 | yhm | VARCHAR | 40 | 否 | 用户名 |
| 3 | mm | VARCHAR | 40 | 否 | 密码 |
| 4 | xm | VARCHAR | 40 | 否 | 姓名 |
| 5 | lxdh | VARCHAR | 40 | 否 | 联系电话 |
| 6 | lxdz | VARCHAR | 40 | 否 | 联系地址 |

|----|------|---------|----|----|------|
| #### [表gonggao] 公告列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | ggid | INTEGER | 11 | 是 | 公告编号 |
| 2 | bt | VARCHAR | 40 | 否 | 标题 |
| 3 | nr | VARCHAR | 40 | 否 | 内容 |
| 4 | fbsj | VARCHAR | 40 | 否 | 发布时间 |

|----|------|---------|----|----|------|
| #### [表nandu] 难度列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | ndid | INTEGER | 11 | 是 | 难度编号 |
| 2 | nd | VARCHAR | 40 | 否 | 难度 |

|----|-------|---------|----|----|-------|
| #### [表zsd] 知识点列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | zsdid | INTEGER | 11 | 是 | 知识点编号 |
| 2 | zsdmc | VARCHAR | 40 | 否 | 知识点名称 |

|----|------|---------|----|----|------|
| #### [表zhangjie] 章节列属性表格 ||||||
| 序号 | 字段名称 | 数据类型 | 长度 | 主键 | 描述 |
| 1 | zjid | INTEGER | 11 | 是 | 章节编号 |
| 2 | zjmc | VARCHAR | 40 | 否 | 章节名称 |

代码设计

  @RequestMapping(value = "list")
    public ModelAndView  list(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("shijuan/list");//跳转jsp 页面

        String sjid=(String)request.getParameter("sjid");
        if(sjid!=null&&!sjid.equals("")){
            // System.out.println(sjid);
            map.put("sjid",sjid);//拼接sql语句试卷编号
        }
        String sjmc=(String)request.getParameter("sjmc");
        if(sjmc!=null&&!sjmc.equals("")){
            // System.out.println(sjmc);
            map.put("sjmc",sjmc);//拼接sql语句试卷名称
        }
        String fbsj=(String)request.getParameter("fbsj");
        if(fbsj!=null&&!fbsj.equals("")){
            // System.out.println(fbsj);
            map.put("fbsj",fbsj);//拼接sql语句发布时间
        }
        String kssj=(String)request.getParameter("kssj");
        if(kssj!=null&&!kssj.equals("")){
            // System.out.println(kssj);
            map.put("kssj",kssj);//拼接sql语句考试时间
        }
        String sm=(String)request.getParameter("sm");
        if(sm!=null&&!sm.equals("")){
            // System.out.println(sm);
            map.put("sm",sm);//拼接sql语句说明
        }


        List<shijuan> list=shijuandao.getAll(map);//查询shijuan 表数据返回 list对象

        mav.addObject("list",list);//赋值变量


        return mav;
    }

	 /**试卷添加方法 对表 shijuan 进行添加
	 * 
	 */
    @RequestMapping(value = "add")
    public ModelAndView  add(HttpServletRequest request, HttpServletResponse response){

        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
        ModelAndView mav = new ModelAndView();//初始化
        mav.setViewName("shijuan/shijuanadd");
        shijuan bean=new shijuan();
	
        String sjid=(String)request.getParameter("sjid");//{col.columnname} 变量
        bean.setSjid(sjid);//赋值封装

        String sjmc=(String)request.getParameter("sjmc");//{col.columnname} 变量
        bean.setSjmc(sjmc);//赋值封装

        String fbsj=(String)request.getParameter("fbsj");//{col.columnname} 变量
        bean.setFbsj(fbsj);//赋值封装

        String kssj=(String)request.getParameter("kssj");//{col.columnname} 变量
        bean.setKssj(kssj);//赋值封装

        String sm=(String)request.getParameter("sm");//{col.columnname} 变量
        bean.setSm(sm);//赋值封装


        shijuandao.add(bean);//执行 添加 shijuan 添加操作


       

        request.setAttribute("msg", "<script>alert('添加成功');</script>");//操作提示

        return addpage(request,response);

    }

    /**试卷添加方法 对表 shijuan 进行添加
     *
     */
    @RequestMapping(value = "kaoshido")
    public ModelAndView  kaoshido(HttpServletRequest request, HttpServletResponse response){

        try {
            request.setCharacterEncoding("gb2312");//强制字符集
        }catch(Exception e){
            e.printStackTrace();
        }
      //  String fbsj= StaticMethod.getStringDate();
        ModelAndView mav = new ModelAndView();//初始化
     //   mav.setViewName("shijuan/shijuanadd");
        java.util.Date   now=new   java.util.Date();
        java.text.SimpleDateFormat   formatter=new   java.text.SimpleDateFormat("yyyyMMddHHmmssssss");
        //  System.out.print(formatter.format(now));
        String ddid=""+formatter.format(now);

        String[] hd=request.getParameterValues("hd");
        String[] st=request.getParameterValues("st");
        String sj=(String)request.getParameter("sj");//

        String djsj=StaticMethod.getStringDate();//{col.columnname} 变量
        String xs=(String)request.getSession().getAttribute("yhm");//{col.columnname} 变量

        try{

            Connection con=jdbcTemplate.getDataSource().getConnection();
            DBO db=new DBO();
            db.open(con);
            ResultSet rs=null;

            List list=null;

            String sql="";
            for(int i=0;i<st.length;i++){
             dati dtbean=new dati();
             dtbean.setDf("0");
             dtbean.setDjsj(djsj);
             dtbean.setHd(hd[i]);
             dtbean.setLs(ddid);
             dtbean.setSj(sj);
             dtbean.setXs(xs);
             dtbean.setSt(st[i]);
                datidao.add(dtbean);
            }






            chengji bean=new chengji();

            String cjid=(String)request.getParameter("cjid");//{col.columnname} 变量
            bean.setCjid(cjid);//赋值封装


            bean.setXs(xs);//赋值封装

            String cj="0";//{col.columnname} 变量
            bean.setCj(cj);//赋值封装


            bean.setDjsj(djsj);//赋值封装


            bean.setSj(sj);//赋值封装



            String ls=ddid;//{col.columnname} 变量
            bean.setLs(ls);//赋值封装


            chengjidao.add(bean);//执行 添加 chengji 添加操作

        }catch(Exception e){
            e.printStackTrace();;
        }






        request.setAttribute("msg", "<script>alert('答题成功');</script>");//操作提示

        return list(request,response);

    }

三、注意事项

1、管理员账号:admin密码:admin 数据库配置文件DBO.java

2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。

3、数据库文件名是jspsmkaoshi.sql 系统名称smkaoshi

4、地址:login.jsp

四 系统实现

下载地址

https://download.csdn.net/download/qq_41221322/88942810

源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

相关推荐
2401_857610035 分钟前
Spring Boot框架:电商系统的技术优势
java·spring boot·后端
希忘auto21 分钟前
详解MySQL安装
java·mysql
yaosheng_VALVE25 分钟前
稀硫酸介质中 V 型球阀的材质选择与选型要点-耀圣
运维·spring cloud·自动化·intellij-idea·材质·1024程序员节
冰淇淋烤布蕾32 分钟前
EasyExcel使用
java·开发语言·excel
Leo.yuan34 分钟前
数据量大Excel卡顿严重?选对报表工具提高10倍效率
数据库·数据分析·数据可视化·powerbi
拾荒的小海螺39 分钟前
JAVA:探索 EasyExcel 的技术指南
java·开发语言
Runing_WoNiu42 分钟前
MySQL与Oracle对比及区别
数据库·mysql·oracle
Jakarta EE1 小时前
正确使用primefaces的process和update
java·primefaces·jakarta ee
马剑威(威哥爱编程)1 小时前
哇喔!20种单例模式的实现与变异总结
java·开发语言·单例模式
天道有情战天下1 小时前
mysql锁机制详解
数据库·mysql