Jsp的增删改查

一:先写index.jsp 主页面 书写要 查询  增加 的语句

<body>
   <a href="${pageContext.request.contextPath }/listusers">查看所有的用户</a>
   <a href="${pageContext.request.contextPath }/useradd.jsp">添加用户</a>

</body>

二:根据这个listusers写一个Servlet进行查询:

       UserDao userDao = new UserDao();
        List<User> list = userDao.getAllUserByApache();
        if(logger.isInfoEnabled()){
            logger.info("查询出来的数据为:{}",list);
        }
        request.setAttribute("userlist", list);
        request.getRequestDispatcher("/userlist.jsp").forward(request, response);

三:创建一个表格,打印出查询的内容 并在表格中写出删除和更改:

   <body>
      <c:choose>
        <c:when test="${!empty userlist }">
          <table border="1" cellpadding="0" cellspacing="0">
           <tr>  
            <th>用户ID</th>
            <th>用户姓名</th>
            <th>用户邮箱</th>
            <th colspan="2">编辑</th>
           </tr>
           <c:forEach items="${userlist }" var="user">
            <tr>
              <td>${user.id }</td>
              <td>${user.username }</td>
              <td>${user.email }</td>
              <td>
              <a href="${pageContext.request.contextPath }/updateusers?id=${user.id }">
                                              修改
              </a>
              </td>
              <td>
              <a href="${pageContext.request.contextPath }/deleteusers?id=${user.id }">
                                                  删除
              </a>
              </td>
            </tr>
           </c:forEach> 
           </table>
         </c:when>
       </c:choose>

  </body>

四:查询完毕 进行增加:写一个usersadd.jsp创建增加的表格:

 

<body>
${msg }
        <form action="addusers" method="post">
                            用户:<input type="text" name="username" value="<%=request.getParameter("username")== null?"":request.getParameter("username")%>"><br>
                            邮箱:<input type="text" name="email" value="<%=request.getParameter("email")==null?"":request.getParameter("email")%>"><br>
                            密码:<input type="password" name="password"><br>
                            确认密码:<input type="password" name="confirmpwd"><br>
                  <input type="submit" value="提交">                 
        </form>

</body>

五:写一个addusersServlet把数据进行增加;

String username = request.getParameter("username");
        String email = request.getParameter("email");
        String password = request.getParameter("password");
        String confirmpwd = request.getParameter("confirmpwd");
        //进行日志输出 查看获取的参数
        if(logger.isInfoEnabled()){
            logger.info("获取的用户名为:{},邮箱为:{}",username,email);
        }
        //两次密码不一致需要重新添加
        if(password.equals(confirmpwd)){
            UserDao userDao = new UserDao();
            boolean addFlag = userDao.addUser(username, email, password);
            //添加成功 重定向到查询页面
            if(addFlag){
                response.sendRedirect("listusers");
            }else{
                //添加失败 得用转发 用于回显用户填写的信息 用户只需修改错误的信息即可 其他的不用修改 也不用重新填写
                request.getRequestDispatcher("useradd.jsp").forward(request, response);
            }
        }else{
            //setAttribute这种形式 是可以使用EL表达式 进行获取值的
            request.setAttribute("msg", "两次密码不一致你弄啥嘞");
            request.getRequestDispatcher("useradd.jsp").forward(request, response);
        }

六:增加完毕   在表格中进行删除和修改:

    修改:创建一个updateServlet先查询要增加的ID;

          String id = request.getParameter("id");
        Integer integer = Integer.valueOf(id);
        UserDao userDao = new UserDao();
        User user = userDao.getUserById(integer);
        if(logger.isInfoEnabled()){
            logger.info("查出来的用户为:{}",user);
        }
        if(user!=null){
            request.setAttribute("user", user);
            request.getRequestDispatcher("/userupdate.jsp").forward(request, response);

创建一个jsp打印出要修改的数据:

<body>
     <form action="comfirmUpdate" method="post">
        <input type="hidden" name="id" readonly="readonly" value="${user.id }"><br>
     用户名:<input type="text" name="username" value="${user.username }"><br>
     邮箱:    <input type="text" name="email" value="${user.email }"><br>
     密码:    <input type="password" name="password" value="${user.password }"><br>
       <button type="submit">提交</button>
     
     </form>

</body>

创建一个servlet把修改的数据跳转的主页面;

String id = request.getParameter("id");
        String username = request.getParameter("username");
        String email = request.getParameter("email");
        String password = request.getParameter("password");
        if(logger.isInfoEnabled()){
            logger.info("要修改的数据为:用户ID:{},用户姓名:{},邮箱:{}",id,username,email);
        }
        UserDao userDao = new UserDao();
        boolean updateFlag = userDao.updateUser(username, email, password, Integer.valueOf(id));
        if(updateFlag){
            response.sendRedirect(request.getContextPath()+"/listusers");

删除:创建一个servlet:找到ID进行删除:

String id = request.getParameter("id");
        UserDao userDao = new UserDao();
        boolean deleteFlag = userDao.deleteUser(Integer.valueOf(id));
        if(logger.isInfoEnabled()){
            logger.info("删除的用户ID为{}的用户",id);
        }
        if(deleteFlag){
            response.sendRedirect(request.getContextPath()+"/listusers");

 

 


版权声明:本文为qq_42785997原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。