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.printStackTraposted on 2017-05-06 21:10 cynchanpin 阅读(1209) 评论(0) 收藏 举报
浙公网安备 33010602011771号