0

这个问题让我想知道,因为我没有看到使用 contextListener (据我所知运行一次)以编程方式添加 servlet 优于 DD 或 Annotations。我想知道一个常见的用例,它有助于以编程方式添加它们。

如果有一种方法可以在运行时(在应用程序运行期间)以编程方式添加 servlet,我可能会想到一些情况,但似乎只能通过 contextListener 或

来自 ServletContainerInitializer 实现的 onStartup 方法。

正如 Servlet 3.0 所述。

4

1 回答 1

1

在运行时添加 servlet 等的能力主要是为框架创建者设计的。

如果你创建了一个框架,比如说,它与普通的 POJO Java 对象一起工作,那么你需要在某个时候创建​​ servlet——它们必须公开 POJO 类以进行 Web 访问。因为您可以动态创建 servlet,所以不需要 POJO 类的配置文件。好的!

通用框架可能还具有可以动态“打开/关闭”的过滤器,例如可以有可切换的过滤器来处理用户授权/身份验证。

在“正常”应用程序中,通常所有 Servlet、过滤器都是预先知道的,因此几乎不需要编程添加。

于 2012-04-23T21:41:09.547 回答