MVC编程模式
1.关于MVC
①.M:Model
②.V:View
③.C:Controller
MVC是Model-View-Controller的简称,即模型-视图-控制器。
MVC是一种设计模式,它把应用程序分成三个核心模块:模型、视图、控制器,它们各自处理自己的任务。
2.优点:对一个请求不使用MVC,Servlet、JSP都能够实现,可是这种缺点就是须要在Servlet中拼写html代码,在JSP中书写处理请求的代码
MVC的处理过程
下述代码不足之处:没有使用数据库连接池、DBUtils、DAO等等,一个请求一个Servlet,应该是多个请求(一个模块)一个Servlet,删除时候没有增加jquery。
仅仅是为了呈现样例。
此处使用
M(DAO)
V(JSP)在页面上填写java代码实现显示
C(Servlet):受理请求,获取请求參数,调用DAO方法,把DAO的返回值放入request中,转发(重定向)页面。
来呈现。
3.代码呈现
创建学生表:id ,name ,hiredatemvc_query.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <!-- 注意servlet-mapp一致 --> <a href="getAllStudent">获取全部学生信息</a> </body> </html>
mvc_query_servlet.java
/** * Servlet implementation class mvc_query_servlet */ @WebServlet("/getAllStudent") public class mvc_query_servlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.getRequestDispatcher("/mvc_query_show.jsp") .forward(request, response); } }
mvc_query_show.jsp
<%@page import="xixihaha.StudentDAO"%> <%@page import="xixihaha.Student"%> <%@page import="java.util.List"%> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <table border="1" cellpadding="10" cellspacing="0"> <tr> <th>IDCard</th> <th>Name</th> <th>Hire_Date</th> <th>Delete</th> </tr> <% StudentDAO dao = new StudentDAO(); List<Student> ls = dao.getAll(); for(Student s : ls){ %> <tr> <td> <%=s.getIdCard() %> </td> <td> <%=s.getStuName() %> </td> <td> <%=s.getHireDate().toString() %> </td> <td> <!-- get请求,区分删的是哪条信息 --> <a href="deleteStu?id=<%=s.getIdCard() %>">Delete</a> </td> </tr> <% } %> </table> </body> </html>studentDAO.java
public class StudentDAO { private Connection getConnection(){ Connection conn = null; String driverClass = "com.mysql.jdbc.Driver"; String url = "jdbc:mysql://127.0.0.1:3306/mydatabase"; String user = "root"; String password = "qiaolezi"; try { Class.forName(driverClass); conn = DriverManager.getConnection(url, user, password); } catch (Exception e) { e.printStackTra
posted on 2017-05-06 21:10 cynchanpin 阅读(1196) 评论(0) 编辑 收藏 举报