zoukankan      html  css  js  c++  java
  • 重定向和转发页面的后续代码是否执行

    重定向:会在当前页面代码执行完毕后,跳转到指定的页面执行其他代码。 
    转 发:在本页面代码执行到转发语句后,即跳转到指定的页面执行其他代码,执行完毕后返回接着执行转发语句后的代码。

    测试

    在重定向之前和之后让程序各循环sleep五秒,在控制台打印输出,看页面在什么阶段跳转

    //重定向前循环sleep五秒
    for (int i = 0; i < 5; i++) {
        System.out.println("before redirect:" + i);
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    
    //重定向
    response.sendRedirect("result.jsp");
    
    //重定向后循环sleep五秒
    for (int i = 0; i < 5; i++) {
        System.out.println("after redirect:" + i);
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }


    可以发现:控制台打印了5个before redirect和5个after redirect之后,页面刷新,浏览器地址改变,页面内容改变
    1. 重定向之后的代码会继续执行
    2. 当前程序所有代码执行完毕后,才会执行重定向跳转

    引申
    重定向之后,加上return,可让之后的代码不再执行

    boolean flag = true;
    if (flag) {
    response.sendRedirect("result.jsp");
    return;
    }

    控制台打印了5个before redirect之后,页面刷新,浏览器地址改变,页面内容改变

  • 相关阅读:
    自定义button
    图片拉伸
    通过偏好设置进行数据存储
    AppDelegate中的方法解析
    copy-mutableCopy
    NSNumber、NSValue、NSDate、NSObject
    iOS OC语言原生开发的IM模块--RChat
    文件缓存
    ios基础动画、关键帧动画、动画组、转场动画等
    Moya/RxSwift/ObjectMapper/Alamofire开发
  • 原文地址:https://www.cnblogs.com/wcxcc/p/10681183.html
Copyright © 2011-2022 走看看