zoukankan      html  css  js  c++  java
  • request的生命周期

    有如下功能:

    从index.jsp页面点击超链接进入TestServlet服务器,TestServlet服务器再请求转发到test.jsp。

    在index.jsp里设置了request的attribute:requestKey1,在TestServlet服务器里设置了request的attribute:requestKey2,然后在test.jsp页面里获取request的两个属性值。

     

    具体代码如下:

     

     

    运行结果:只能获取到request的requestKey2,不能获取requestKey1。这说明index.jsp的request和test.jsp不是同一个request,而TestServlet服务器的request和test.jsp是同一个request.

    原因分析:

                                            超链接(相当于请求转发)  

                                            发送request②                          请求转发request②

                            index.jsp------------------>TestServlet服务器-------------------->test.jsp

    (index.jsp里显示自身页面的request①)                                               (test.jsp里显示自身页面的request②)

    也就是说,index.jsp页面的request是用来显示自身页面的的,刷新一下index.jsp页面,就发送一次request①从而页面完成请求和响应,request①就会被创建和销毁。

    而从index.jsp页面点击超链接进入TestServlet服务器是另一个request②,TestServlet服务器对request②进行请求转发到test.jsp页面,此时test.jsp获取的请求仍然是request②,而且test.jsp页面显示自身的也是request②。如果刷新test.jsp页面,就会再发送一次request②(从index.jsp---->TestServlet服务器)

     

    那么,如果是TestServlet服务器是重定向到test.jsp,将会是如下流程:

                                                超链接(相当于请求转发)  

                                           发送request②                          请求重定向request③

                            index.jsp------------------>TestServlet服务器-------------------->test.jsp

    (index.jsp里显示自身页面的request①)                                               (test.jsp里显示自身页面的request③)

     此时如果刷新一下test.jsp页面,再次发送的request③和前面index.jsp的request①、TestServlet服务器的request②没有半点关系。

     

     

  • 相关阅读:
    深入理解分布式事务,高并发下分布式事务的解决方案
    Java互联网架构-Mysql分库分表订单生成系统实战分析
    PowerDesigner 表格导出为excel
    并行(多进程)-python
    使用caffe模型测试图片(python接口)
    评估模型-二分类
    python-字符编码
    python-随机操作(random)
    目标检测-yolo2
    tensorflow-安装
  • 原文地址:https://www.cnblogs.com/TTTTT/p/6005765.html
Copyright © 2011-2022 走看看