MVC设计模式——查询/删除

流程图

student.java

package com.demo.javaweb;

import java.io.Serializable;

public class Studentx {
    private int id;
    private String name;
    private String password;

    public Studentx(int id, String name, String password) {
        this.id = id;
        this.name = name;
        this.password = password;
    }

    public Studentx() {
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", password='" + password + '\'' +
                '}';
    }
}

  

studentDAO

import com.demo.javaweb.Studentx;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

public class StudentDAO {
    public void deleteOne(Integer id){
        Connection conn = null;
        PreparedStatement prep = null;
        ResultSet resultSet = null;
        try {
            String driverClass = "com.mysql.cj.jdbc.Driver";
            String url = "jdbc:mysql://localhost:3306/yang";
            String user = "root";
            String password = "password";
            Class.forName(driverClass);
            conn = DriverManager.getConnection(url, user, password);
            String sql = "DELETE  FROM STUDENT WHERE ID = ?";
            prep = conn.prepareStatement(sql);
            prep.setInt(1,id);
             prep.executeUpdate();

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (resultSet != null) {
                    resultSet.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if (prep != null) {
                    prep.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }

    public List<Studentx> getAll() {
        List<Studentx> list = new ArrayList<>();
        Connection conn = null;
        PreparedStatement prep = null;
        ResultSet resultSet = null;
        try {
            String driverClass = "com.mysql.cj.jdbc.Driver";
            String url = "jdbc:mysql://localhost:3306/yang";
            String user = "root";
            String password = "password";
            Class.forName(driverClass);
            conn = DriverManager.getConnection(url, user, password);
            String sql = "SELECT * FROM STUDENT";
            prep = conn.prepareStatement(sql);
            resultSet = prep.executeQuery();
            while (resultSet.next()) {
                int id = resultSet.getInt(1);
                System.out.println(id);
                String name = resultSet.getString(2);
                System.out.println(name);
                String pwd = resultSet.getString(3);
                System.out.println(pwd);
                Studentx stu = new Studentx(id, name, pwd);

                list.add(stu);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                if (resultSet != null) {
                    resultSet.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if (conn != null) {
                    conn.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
            try {
                if (prep != null) {
                    prep.close();
                }
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        return list;
    }


}

  

servlet

1.listallstudents

public class ListAllStudents extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        StudentDAO studentDAO = new StudentDAO();
        List<Studentx> list =  studentDAO.getAll();

        req.setAttribute("list",list);

        req.getRequestDispatcher("/students.jsp").forward(req,resp);
    }
}

2.deleteservlet

public class DeleteServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            String id = req.getParameter("id");
            StudentDAO dao = new StudentDAO();
            dao.deleteOne(Integer.parseInt(id));
            req.getRequestDispatcher("success.jsp").forward(req,resp);
    }
}

  

页面跳转:

1.链接页面:

<%--
  Created by IntelliJ IDEA.
  User: dell
  Date: 2019/7/1
  Time: 13:50
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
    <a href="ListAllStudents">listAllStudents</a>
</body>
</html>

2.查询页面:

<%--
  Created by IntelliJ IDEA.
  User: dell
  Date: 2019/7/1
  Time: 13:55
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8"  language="java" %>
<%@ page import="com.demo.javaweb.Studentx" %>
<%@ page import="java.util.List" %>
<html>
<head>
    <title>Title</title>
</head>
<body>

    <%
     List<Studentx> students = (List<Studentx>)request.getAttribute("list");

    %>

    <table BORDER="1" CELLPADDING="10" cellspacing="0">
        <tr>
            <td>ID</td>
            <td>NAME</td>
            <td>PASSWORD</td>
            <td>DELETE</td>
        </tr>
        <%
            for (Studentx stu : students
            ) {
                %>
         <tr>
             <td><%= stu.getId()%></td>
             <td><%= stu.getName()%></td>
             <td><%= stu.getPassword()%></td>
             <td><a href="DeleteServlet?id=<%=stu.getId()%>">delete</a></td>
         </tr>

        <%
        }
        %>
    </table>


</body>
</html>

3.删除页面:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
        删除成功!!!
        <br>
<a href="ListAllStudents">listAllStudent</a>
</body>
</html>

  

结果图:

数据库:

posted @ 2019-07-02 11:04  鸿森  阅读(357)  评论(0编辑  收藏  举报