本文为JavaWeb项目课程设计,通过利用MVC模式,前端JSP+CSS界面展示,控制器用Servlet完成页面跳转,JavaBean完成数据库类、用户类、教师类等封装,开发出的一款教师监考管理系统。

2.2.1管理员

管理员为本系统的主要操纵者,可以完成几乎所有的功能,其总结功能需求如下:

  1. 需要输入正确的账号密码登录整个系统;
  2. 能够查看当前待排考试信息;
  3. 能够查看当前考场状态信息;
  4. 能够查看当前已分配监考教师及地点考场信息;

5. 能够实现为每个考场分配合理的考场;

6. 能够对每种信息进行单项增加或用excel导入MySql批量式增加;

  1. 能够对每种信息进行删除、修改、查询的操作;
  2. 能够按照班级考试人数为考试科目合理分配监考教师;
  3. 能够单独分配或批量一键分配;
  4. 能够一键处理或手动处理教师请求调换信息;
  5. 能够对监考教师请求信息和监考信息完成后发送邮件提醒;
  6. 具有良好的可视化前端界面和温馨提示;
  7. 能够显示当前已有任务的教师总监考次数;

2.2.2 教师

教师同样作为本系统的使用者,能够完成与自身相关的功能,具体功能需求总结如下:

  1. 需要输入正确的账号密码登录整个系统;
  2. 能够完成密码等个人信息的修改;
  3. 能够查看个人当前需监考的考试信息;
  4. 能够查看当前所有时间状态等;
  5. 对有异议的考试可发送申请调换请求;
  6. 友好界面显示,提醒当前待监考场数;
  7. 收取邮件提醒监考任务等;

数据流图:

相关界面展示:

管理员端:

教师端:

部分Servlet代码:

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub 
        response.setContentType("text/html;charset=UTF-8");
        request.setCharacterEncoding("UTF-8");
        String url = request.getServletPath();
        if(url.equals("/a.Main"))
        {
            /*String a = request.getParameter("username");
            System.out.print(a);*/
            String us = request.getParameter("username"); //从这开始,是为了登录所用的,并且判断是哪类人登录的,跳转到不同页面
            String pw = request.getParameter("password");
            String rad = request.getParameter("power");
            if(us==null || pw==null || rad==null)
            {
                PrintWriter out=response.getWriter();
                out.print("<script language='javascript'>alert('孩子看看信息输入了吗');window.location.href='login.jsp';</script>");
            }
            else if(us!=null && pw!=null){
                if(rad.equals("admin"))  
                {
                    Admin admin = new Admin();
                    admin.setPassword(pw);
                    admin.setUsername(us);
                    //System.out.print(admin.getUsername()); 
                    //System.out.print(admin.getPassword());
                    int r = admin.getPasswd();
                    if(r==1) {
//                        int time = 3600;
//                        Cookie c=new Cookie("user",us+"-"+pw);
//                        c.setMaxAge(time);
//                        response.addCookie(c);
                        System.out.print("管理员,登录成功");
                        request.getSession().setAttribute("name", us);
                        request.getRequestDispatcher ("admin_1.jsp").forward (request, response);
                    }else if(r != 1) {
                        PrintWriter out=response.getWriter();
                        out.print("<script language='javascript'>alert('孩子看看密码输对了吗');window.location.href='login.jsp';</script>");
                    }
                }
                else if(rad.equals("teacher")) 
                {
                    Teacher teacher = new Teacher();
                    teacher.setTid(us);
                    teacher.setTpassword(pw);
                    int r = teacher.tgetPasswd();
                    if(r == 1) {
                        System.out.print("老师,登录成功");
                        request.getSession().setAttribute("tname", us);
                        request.getRequestDispatcher ("tea_1.jsp").forward (request, response);
                    }else if(r != 1) {
                        PrintWriter out=response.getWriter();
                        out.print("<script language='javascript'>alert('孩子看看密码输对了吗');window.location.href='login.jsp';</script>");
                    }
                }
            }
        }
        
        if(url.equals("/b.Main")) //考试信息查询跳到这里来
        {
            //Admin admin = new Admin();
            //request.setAttribute("kaoshis", admin.getAllkaoshi());
            Test test = new Test();
            request.getSession().setAttribute("kaoshis", test.getAllkaoshi());         
            request.getRequestDispatcher("admin_test.jsp").forward(request,response);
        }
        
        if(url.equals("/c.Main")) //考试信息删除跳到这里来
        {
            Test test = new Test();
            String x1 = request.getParameter("x1");
            int c = Integer.parseInt(x1);
            System.out.print(c);
            test.setTest_id(c);
            test.changeexamhouse(); //删除当前考试的话,需要把考场恢复成kong,表明以后可以用,加入有looktea的话,把looktea的老师弄成kong
            int a = test.delkaoshi();
            if(a==1)
            {
                request.getSession().setAttribute("kaoshis", test.getAllkaoshi()); 
                request.getRequestDispatcher("admin_test.jsp").forward(request,response);
            }else {
                PrintWriter out=response.getWriter();
                out.print("<script language='javascript'>alert('好像删除失败了呢');window.location.href='admin_test.jsp';</script>");
            }
        }
        
        if(url.equals("/d.Main")) //考试信息修改跳到这里来
        {
            response.setContentType("text/html;charset=UTF-8");
            request.setCharacterEncoding("UTF-8");
            Test test = new Test();
            Teacher teacher = new Teacher();
            String x =(String)request.getSession().getAttribute("oldlooktea");
            String y =(String)request.getSession().getAttribute("oldlooktime");
            String z =(String)request.getSession().getAttribute("oldposit");
            teacher.dealold(x,y,1);
            teacher.dealold(z,y,3);
            String x1 = request.getParameter("id");
            String x2 = request.getParameter("l_s_card");
            String x3 = request.getParameter("s_subject");
            String x4 = request.getParameter("k_time");
            String x5 = request.getParameter("c_name");
            String x6 = request.getParameter("tea");
            String x7 = request.getParameter("s_position");
            String x8 = request.getParameter("count");
            String x9 = request.getParameter("looktea");
            teacher.dealold(x9,y,2);
            teacher.dealold(x7,y,4);
            int c = Integer.parseInt(x1);
            test.setTest_id(c);
            test.setTest_leibie(x2);
            test.setTest_subject(x3);
            test.setTest_time(x4);
            test.setTest_class(x5);
            test.setTest_teacher(x6);
            test.setTest_position(x7);
            test.setTest_count(x8);
            test.setLooktea(x9);
            int a = test.updatekaoshi();
            if(a==1)
            {
                request.getSession().setAttribute("kaoshis", test.getAllkaoshi()); 
                request.getRequestDispatcher("admin_test.jsp").forward(request,response);
            }else {
                PrintWriter out=response.getWriter();
               out.print("<script language='javascript'>alert('好像修改失败了呢');window.location.href='admin_test.jsp';</script>");
            }
        }

JavaWeb项目 MVC模式 监考管理系统相关推荐

  1. JavaWeb项目+MVC三层架构+Mysql+Tomcat+汽车配件销售系统前后端+可以用于学习javaweb项目入门

    JavaWeb项目+MVC三层架构+Mysql+Tomcat+汽车配件销售系统前后端+可以用于学习javaweb项目入门 可以用于课程设计.毕业设计的知识点入门学习 提示:此资源仅用于javaweb网 ...

  2. 【JavaWeb】JavaWeb项目实战——品牌后台管理系统

    JavaWeb项目实战--品牌后台管理系统 项目概述 功能介绍 成果展示 项目实现 使用Maven构建项目 Maven介绍 具体操作 使用Mybatis封装对数据库的操作 在Mysql中建表,并添加数 ...

  3. javaweb项目案例:员工管理系统

    1.项目需求 使用Javaweb+MySQL实现一个员工管理系统,能对员工进行增删改查,使用SSH框架开发. 2.数据表设计 manager(管理员表) CREATE TABLE `manager` ...

  4. JavaWeb项目火车订票管理系统

    需求分析 通过JavaWeb实现远程访问mysql数据库,实现火车购票系统的功能 火车订票管理系统是为了满足人们对于购买火车票的需求,可以24小时直接在网上进行火车票的购买,极大的方便了人们对火车票的 ...

  5. JavaWeb项目smbms超市订单管理系统

    项目简介 smbms超市订单管理系统,主要用于用户管理.订单管理.供应商管理等功能,是学习JavaWeb练习的一个小项目 这个博客只讲了部分功能(用户登录界面,和密码修改界面),以及用户管理的实现. ...

  6. 超适合练手的一套JavaWeb项目 (超市后台管理系统)

    GIF动态图演示 百度百度网盘提取项目 带数据库![链接]:https://pan.baidu.com/s/13F2rxszZRLGDt9pr6ixYUg提取码:关注私信我发送! 一.项目搭建准备工作 ...

  7. 基于JavaWeb Mybatis+MVC(JSP + servlet + javabean)的高校就业管理系统(含项目源码)

    基于JavaWeb Mybatis+MVC的高校就业管理系统 项目简介 基本功能简介 项目要求 概要设计 数据模型(E-R图) 数据库结构设计 主要页面展示 项目实现 创建项目 项目结构展示 项目关键 ...

  8. 教务管理系统JavaWeb项目

    刚学完javaweb,做个项目练手与巩固所学的知识,同时分享自己写的这个教务管理系统,同样也是为自己记下笔记. 为以后复习有帮助. 该系统没有用到框架的知识,一共花了7天写出来.所以非常适合javaw ...

  9. JavaWeb框架(四):JavaWeb项目基于三大组件实现的公司管理系统

    MVC实战项目 Web 三大组件实现 公司管理系统 需求: 项目实战 基于会话跟踪技术实现登录功能 基于Filter过滤器实现登录验证功能 基于Listener监听器监听ServletCntext对象 ...

最新文章

  1. matlab水印剪切攻击程序,可以运行的水印matlab程序(嵌入,提取,攻击测试等).doc
  2. [.NET] Rough Dependency Injection
  3. 心得体悟帖---17、于迷茫低落处找到本心
  4. java什么是稳定排序,这可能是你听说过最快的稳定排序算法
  5. 【实用】表维护视图SM30增加自定义按钮的实现
  6. [html] 为什么移动端页面的设计稿一般是750px/640px呢?
  7. MYSQL用存储过程创建百万级测试数据表
  8. Python自动化部署环境
  9. Bootstrap+DataTables后端排序分页详解
  10. jQuer实时监控input对table进行筛选
  11. 浏览器的“心脏”——内核
  12. VSCode插件,TODO标记
  13. Java知识之Git
  14. Excel基础—文件菜单之设置选项
  15. git 配置ssh 秘钥
  16. “高通”字库芯片的使用方法
  17. 一张图把DCDC电源拓扑“融会贯通”
  18. 计算机动画专业要学什么课程,贵阳市计算机学校3D动画设计专业需要学哪些课程?...
  19. 【CFD理论】对流项-04-TVD
  20. 简单三步!教你用前端表格控件SpreadJS做购物车

热门文章

  1. IAT HOOK DEMO win32/win64
  2. html 分页插件ajax,简易ajax生成分页插件
  3. 可编程控制器工作原理及程序编制
  4. IDEAweb项目文件夹没有蓝色小点
  5. 3.计量模型的基础分析流程(数据分析学习DAY4)
  6. java mix audio_Free Mix Audio下载
  7. 写给我们这些浮躁 不安的程序员
  8. 期权隐含波动率曲面(草稿版)
  9. 解决:Error: Continuous value supplied to discrete scale
  10. XT702 里程碑,手机用数据线连不上电脑,弹出MTP Media player