• 员工管理系统————员工修改模块


    1.分析

      1.点击修改,跳转到修改的页面,点击哪个,则获取哪个员工的信息,即默认修改页面的值。

      2.点击确认修改,修改完成后重定向到管理员工页面。如图:

    2.步骤

      a.在接口中声明去修改和修改的方法

      b.实现接口中的方法

      c.点击修改跳转Update.jsp

      d.Update.jsp提交请求参数

      e.servlet获取请求参数

      f.调用dao,将修改后的数据添加到数据库中

      g.重定向到员工管理(“/emp”),执行查询所有员工,显示到页面。

    代码:

    a:

    IEmpDAO.java

    b:

    EmpDAOImpl.java

    c:

    emp.jsp

    ToUpdateEmpServlet.java

    @WebServlet("/toUpdate")
    public class ToUpdateEmpServlet extends HttpServlet {
        /*去修改:用户点击修改按钮请求到达此servlet
        * 获取当前要修改员工的数据,共享给jsp,请求转发
        * */
        @Override
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
           /*获取请求参数id*/
            String id = req.getParameter("id");
            /*根据id获取员工数据*/
            EmpDAOImpl dao=new EmpDAOImpl();
            Map<String, Object> emp = dao.getEmp(Integer.parseInt(id));
            /*请求共享数据(此处我们共享的是一个map不是一个List<map>)*/
            req.setAttribute("emp",emp);
            /*请求转发到update.jsp*/
            req.getRequestDispatcher("update.jsp").forward(req,resp);
        }
    }

    d:

    update.jsp

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Title</title>
        <head>
            <title>修改</title>
            <style type="text/css">
                fieldset{ 300px;margin: 100px auto;}
            </style>
        </head>
    <body>
    <fieldset id="">
        <legend>修改员工</legend>
        <form action="/day49/update" method="post">
            <input  type="hidden"   name="id" value="${emp.id}"   />
            <div>
                员工姓名: <input name="name" value="${emp.name}" />
            </div>
            <div>
                员工手机: <input name="telephone" value="${emp.telephone}" />
            </div>
    
            <div>
                员工部门:
                <select name="deptID" id="deptID" >
                    <option value="1"   ${emp.deptID==1?"selected":""}     >总经办</option>
                    <option value="2"   ${emp.deptID==2?"selected":""}     >人事部</option>
                    <option value="3"   ${emp.deptID==3?"selected":""}     >业务部</option>
                </select>
            </div>
            <div>
                员工角色:
                <select name="roleID" id="roleID" >
                    <option value="1" id="r1">超级管理员</option>
                    <option value="2" id="r2">员工管理员</option>
                    <option value="3" id="r3">业务管理员</option>
                </select>
    
    
            </div>
            <div>
                员工状态:
                <select name="state" >
                    <option value="0" id="s0">离职</option>
                    <option value="1" id="s1">在职</option>
                </select>
            </div>
    
            <button>修改</button>
        </form>
    
    </fieldset>
    <script>
        // 当前表单的表单元素 够不够
        // 让 角色下拉框中的   1 2 3
        document.getElementById("r"+${emp.roleID}).selected = "selected";
        document.getElementById("s"+${emp.state}).selected = "selected";
    </script>
    
    </body>
    </html>

    e,f,g:

    UpdateEmpServlet.java

    @WebServlet("/update")
    public class UpdateEmpServlet extends HttpServlet {
        @Override
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            /*处理中文乱码*/
            req.setCharacterEncoding("UTF-8");
            /**获取请求参数*/
            String name = req.getParameter("name");
            String telephone = req.getParameter("telephone");
            String deptID = req.getParameter("deptID");
            String roleID = req.getParameter("roleID");
            String state = req.getParameter("state");
            String id = req.getParameter("id");
            /*生成员工对象*/
            Employee emp=new Employee(Integer.parseInt(id),name,telephone,Integer.parseInt(deptID),Integer.parseInt(roleID),Integer.parseInt(state));
            /*调用dao将数据添加到数据库中*/
            IEmpDAO dao=new EmpDAOImpl();
            dao.update(emp);
            /*重定向到/emp*/
           resp.sendRedirect("/day49/emp");
        }
    }

      

  • 相关阅读:
    在WM中画个带有边框的Panel
    在PPC上安装SQL Mobile库
    利用SQL语句清理日志
    Asp.net Ajax 中的脚本错误: Sys未定义的解决方法
    python搭建简易服务器
    STL源码剖析读书笔记第3章
    mongodb 查找 排序 索引 命令
    STL源码剖析读书笔记第2章
    词排序
    关于淘宝直通车优化的一点感悟
  • 原文地址:https://www.cnblogs.com/duguangming/p/10731857.html
Copyright © 2020-2023  润新知