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

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

相关推荐
GISer_Jing2 小时前
前端面试通关:Cesium+Three+React优化+TypeScript实战+ECharts性能方案
前端·react.js·面试
落霞的思绪3 小时前
CSS复习
前端·css
咖啡の猫5 小时前
Shell脚本-for循环应用案例
前端·chrome
kura_tsuki5 小时前
[Oracle数据库] Oracle 常用函数
数据库·oracle
YA3336 小时前
java基础(十)sql的mvcc
数据库
呼啦啦啦啦啦啦啦啦7 小时前
常见的排序算法
java·算法·排序算法
百万蹄蹄向前冲7 小时前
Trae分析Phaser.js游戏《洋葱头捡星星》
前端·游戏开发·trae
anlogic7 小时前
Java基础 8.18
java·开发语言
朝阳5818 小时前
在浏览器端使用 xml2js 遇到的报错及解决方法
前端
GIS之路8 小时前
GeoTools 读取影像元数据
前端