版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38038143/article/details/83653241
1.前端界面
编写一个最简单的登录界面:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div>
<form action="/class02/BlogServlet1" method="post">
用户名:<input type="text" name="username">
<br>
密 码:<input type="password" name="password">
<br>
<input type="submit" value="登录">
</form>
</div>
</body>
</html>
2. Servlet 编写
共编写2个Servlet(继承 HttpServlet ):
- BlogServlet1:
doPost()
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
// 获取参数值
String username = (String) request.getParameter("username");
String password = (String) request.getParameter("password");
// 输出到控制台
System.out.println("username: " + username);
System.out.println("password: " + password);
// 请求重定向
// 设置参数值
request.setAttribute("newName", "sendRedirect");
response.sendRedirect("/class02/BlogServlet2");
// 请求转发
// 设置参数值
request.setAttribute("newName", "RequestDispatcher");
RequestDispatcher requestDispatcher = request.getRequestDispatcher("/BlogServlet2");
requestDispatcher.forward(request, response);
}
- BlogServlet2:
doGet()
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
// response.getWriter().append("Served at: ").append(request.getContextPath());
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
// 输出到页面
out.println("BlogServlet2: <br><br>");
out.println("name: " + request.getParameter("username") + "<br>");
out.println("passwd: " + request.getParameter("password") + "<br>");
out.println("newName: " + request.getAttribute("newName") + "<br>");
}
3. 运行
注释请求转发:
结果:URL地址变化
浏览器登录:
控制台:
注释请求重定向:
结果: