页面转发练习
登录页面login.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> ${msg} <form action="/day10/login2" method="post"> <table border="1" width="50%"> <tr> <td>输入姓名</td> <td> <input type="text" name="username" /> </td> </tr> <tr> <td>输入密码</td> <td> <input type="password" name="password" /> </td> </tr> <tr> <td colspan="2"> <input type="submit" value="登陆"/> </td> </tr> </table> </form> </body> </html>
Servlet服务器逻辑处理
import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * 使用转发到登陆页面 * @author Administrator * */ public class Login2Servlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { /** * 先获取用户输入的内容(request对象) * 判断姓名和密码是否都是admin,如果有一个不是,重定向到登陆页面,如果都是,就登陆成功。 */ // 获取用户输入的内容 String username = request.getParameter("username"); // 程序入口 // 获取密码 String password = request.getParameter("password"); // 判断 if("admin".equals(username) && "admin".equals(password)){ // 登陆成功 // 重定向到登陆页面 response.sendRedirect("/day10/response/refresh.html"); }else{ // 在request域存入内容 request.setAttribute("msg", "用户名或者密码错误!"); // 转发到登陆页面 // 转发 // response.sendRedirect("/day10/response/login.html"); request.getRequestDispatcher("/request/login.jsp").forward(request, response); } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
refresh.html定时转发页面
<!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"> <!-- 设置头信息,5秒后跳转 --> <meta http-equiv="refresh" content="5;url=/day10/response/login.html"> <title>页面定时跳转(读秒)</title> </head> <body onload="run()"> <h2>页面将在<span id="spanId">5</span>秒后跳转</h2> </body> <!-- 切换成js代码--> <script type="text/javascript"> /* 读秒的操作 页面一加载,执行加载事件 onload 执行读秒的操作,每隔一秒数字变一次。 每隔一秒,js的定时器 执行:第一次加载<h2>页面执行nload=run()方法,获取标签的属性 */ var x = 5; function run(){ var span = document.getElementById("spanId"); span.innerHTML = x; x--; window.setTimeout("run()", 1000); } </script> </html>
浙公网安备 33010602011771号