页面转发练习

登录页面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>

 

posted on 2019-06-18 21:44  backend  阅读(179)  评论(0)    收藏  举报

导航