- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
来自 the Java EE tutorial :
If the resource is static, the
include
method enables programmatic server-side includes.If the resource is a web component, the effect of the method is to send the request to the included web component, execute the web component, and then include the result of the execution in the response from the containing servlet.
我不太清楚“程序化服务器端包含”是什么意思,以及它们与网络组件情况有何不同。
我的意思是,无论我包含什么资源,我都会向它传递一个请求/响应对象元组,并得到一些我可能会或可能不会与客户端沟通的副作用,对吧?
有人可以详细说明一下吗?
最佳答案
您省略了引文前的标题和文字。这些为您询问的评论提供了重要的背景信息:
Including Other Resources in the Response
It is often useful to include another web resource, such as banner content or copyright information, in the response returned from a web component. To include another resource, invoke the include method of a RequestDispatcher object:
include(request, response);
因此,当评论继续
If the resource is static, the include method enables programmatic server-side includes.
它们描述前面代码片段的效果,而不是引入一些新概念。此上下文中的“程序化服务器端包含”是调用与静态资源关联的RequestDispatcher()
的include()
方法。它具有包含与调度程序关联的资源的效果,在正在准备的响应中内联。因此,这是“服务器端”,因为它全部由服务器完成,对客户端透明,而不是客户端必须单独请求包含的资源。*
静态和 Web 组件情况之间的区别在于与调用 include()
方法的 RequestDispatcher
关联的资源 -- 即 要包括什么资源——而不是关于其代码包含方法调用的组件。静态资源就是可以通过不与 Web 组件关联的 URL 来标识的资源。通常这意味着它对应于一个文件。文件内容可以是任何内容,但它的常见用途是包含一个 HTML 片段,例如许多网页共享的页眉或页脚。
I mean, regardless of the resource I include, I pass a request/response object tuple to it and get some side-effects that I may or may not communicate to the client, right?
将其视为将请求和响应对象传递给 RequestDispatcher
更为准确。如果调度程序与静态资源关联,不,请求和响应对象不会呈现给该资源(本身),因为它没有接收或操纵它们的机制。相反,运行代码的 servlet 引擎会在它认为合适的时候操纵响应对象。
如果目标资源是 Web 组件,是的,它将能够从提供的请求中读取数据,操作请求及其上下文,并操作提供的响应,所有这些都由它自行决定。通常,它无法区分这种情况与直接访问它的情况。但不,调用 include()
的组件最多只能有限地控制通过该机制与客户端通信的内容。
*有关术语“服务器端包含”部分的历史和灵感的更多信息,请参阅 Wikipedia .
关于java - 什么是 "programmatic server-side includes"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54111933/
这个问题已经有答案了: 已关闭12 年前。 Possible Duplicates: what is the difference between #include and #include “fi
我想使用 #include 指令,其文件名作为外部定义的宏传递。 例如 #include #FILE".h" 其中 FILE 将被定义为字符串 MyFile(不带引号),结果为 #include "M
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve thi
我想在当前目录及其子目录下的每个 .m 文件中查找所有出现 ncread 的情况。我使用以下命令: grep -R --include="\.m" ncread . 但是该命令没有返回任何内容。 gr
有时我会遇到这样的情况,我发现我需要为大型第三方文件制作一个#include,这样我才能使用一个函数或一个小类,这让我感到内疚,因为我知道这已经消失了增加我的编译时间,因为当我只想要一个功能时它会编译
这个问题在这里已经有了答案: 关闭13年前. Possible Duplicate: what is the difference between #include and #include “fi
我正在尝试通过应用程序加载器提交应用程序。我收到这个错误。但我已经检查了build设置,所有三种架构都包含在有效架构设置中。 最佳答案 断开任何设备,只保留“iOS 设备”中的选项并将其存档。 关于i
Please check this demo plunker更好地理解我的问题。 在我的主页上有一个表格。每个表行后面都有一个最初隐藏的空行。单击第一行时,我使用指令在其下方的空行中注入(inject
我正在使用 mkdocs 创建 html 网页和片段扩展以将我的主文档分成小块。我有一个难以理解的错误: 在我制作的文件file1.md中: --8<-- includes/some_rep/frag
include的推荐方式是什么?您项目的所有文件? 我见过很多使用类似结构的例子: include 的有序列表单个顶级文件(定义 Module 的文件,或应用程序中的“主”文件)中的语句。 这似乎也是
我想知道如何使用 fx:include与 JavaFX Scene Builder 结合使用,因此: 想象我有一个 BorderPane (文件 borderpane.fxml)。在中间部分我想放一个
我看到 Fortran 有“调用”和“包含”语句。两者有什么区别? .i 文件类型有什么意义吗? 即: include 'somefile.i' call 'somesubroutine.f' 谢谢!
这很挑剔,可能没有任何实际用途。我只是好奇... 在 C++20 工作草案 (n4861) 中, header 名称定义为: (5.8) header-name: " q-char-
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: What is the difference between #include and #include “fil
我有一个非常庞大且臃肿的类,我想将它拆分成单独的文件,但它应该对用户完全透明并且与使用该类的现有项目兼容。 特别是,我有自己的 ImageMatrix 类,它定义了大量的一元函数、大量带有标量的二元函
我是 grep 的新手,在重构 C 和 C++ 文件的过程中,我遇到了替换系统的问题,包括 #include <>与本地包括 #include "" . 有没有一种方法可以将 grep 与任何替代工具
我正在制作一个 Spring MVC web 项目,我必须有一个常量 header 。 我的基本要求是“我们希望在所有屏幕上都有一个标题,以显示谁登录了 ProjectA。” 我从这里“What is
在 SWIG 中,“%include”指令与标准 C“#include”有什么区别? 例如,在所有教程中,为什么它们通常看起来像这样: %module my_module %{ #include "M
假设我们有这个头文件: MyClass.hpp #pragma once #include class MyClass { public: MyClass(double); /* .
我已经在一个项目上工作了一段时间,该项目实现了一个使用 C 库的自定义框架。该框架是用 Swift 编写的,我创建了一个模块来向 Swift 公开 C 头文件。该框架是在不同的项目中启动的,然后将该框
我是一名优秀的程序员,十分优秀!