zoukankan      html  css  js  c++  java
  • Servlet与JSP转发与包含---forwardinclude

    在这之前,要明确几个概念

    1.servlet对象由servlet容器创建,servlet的service()方法也由容器调用。一个servlet对象无法获得另一各servlet对象的应用。

    2.请求范围

    web应用范围:整个web应用的生命周期,与ServletContext对象的生命周期对应。web应用范围内的共享数据作为ServletContext对象的属性存在。

    请求范围:服务器端响应一次客户请求的过程,从Servlet收到一个客户请求开始,到返回响应结果结束。与ServletRequest对象和ServletResponse对象的生命周期对应。请求范围内的共享数据可以作为ServletRequest对象的属性存在。

    一、Servlet的转发和包含----web组件之间的协作的两个途径

    请求转发:servlet(源组件)先对客户请求做一些预处理操作,然后把请求转发给其他web组件(目标组件)完成包括生成响应结果在内的后续操作。

    包含:servlet(源组件)把其他web组件(目标组件)生成的响应结果包含到自身的响应结果中。

    二者相同点

    目标组件和源组件处理同一个客户的请求;共享同一个ServletRequest对象和ServletResponse对象。

    目标组件可以为:html,jsp,servlet

    都依赖javax.servlet.RequestDispatcher接口 

    javax.servlet.RequestDispatcher接口表示请求分发器:

     include()包含目标组件

    forward()请求转发给目标组件

    获取RequestDispatche对象

    调用ServletContext的getRequestDispatcher

    调用ServletRequest的getRequestDispatcher

    知止而后有定,定而后能静,静而后能安,安而后能虑,虑而后能得
  • 相关阅读:
    Java的栈和队列
    Spring @Scheduled 在tomcat容器里面执行两次
    Java calendar获取月份注意事项
    mysql 查询今天,昨天,上个月sql语句 注解
    MySQL 查询最近几天的记录 最近7天的记录 本周内的记录
    关于mybatis 注解sql sum(参数)传参写法
    tomcat 部署war项目
    maven项目生成war包
    Cron表达式
    ### 获取当前日期的函数
  • 原文地址:https://www.cnblogs.com/taoHongFei/p/8567438.html
Copyright © 2011-2022 走看看