当前位置: 首页 > 面试题库 >

如何确定web.xml中侦听器的顺序

柴文林
2023-03-14
问题内容

我的Java Web应用程序中有一堆servlet上下文侦听器,每个侦听器都收集有关环境的一些信息。

其中一些依赖于另一听众收集的信息。但是我无法确定侦听器的注册和调用顺序,因此我必须重复代码。

我知道监听器是按顺序在web.xml中注册的,但是这对我来说有点含糊不清,以至于无法依靠它。

您是否暗示我可以解决我的问题?


问题答案:

所有servlet容器和Java EE容器都严格执行规范的这一部分。您可以依靠以下事实:侦听器以您在web.xml中指定的顺序进行调用。

您可以拥有一个应用程序级别数据结构(HashMap),当每个过滤器/侦听器遇到来自请求的数据时,该结构都会被更新。这将使每个侦听器仅更新必要的内容。您可以将通用代码放入基本的侦听器中,这样就不会重复代码。



 类似资料:
  • 我使用JMS从IBM MQ message Broker发送接收消息。我目前正在处理侦听器服务,抛出未处理的异常和消息发送回队列而没有确认。我希望服务重试一个可配置的次数,并抛出表示监听器服务不可用的完全异常消息。 我的监听器和容器工厂如下所示。

  • 问题内容: 我想知道如何在java中设置自己的侦听器。例如,我有一个将数字从1递增到100的函数。我想在值达到50时设置侦听器。我该怎么做?请给我建议任何教程。 问题答案: 查看使用侦听器的所有类的源代码。实际上,这很容易: 为您的听众创建一个界面,例如 维护清单 侦听器应在每个事件上进行遍历,然后遍历列表并使用一些事件参数调用适当的方法 至于观察者模式以及一些Java代码,请看维基百科。

  • 问题内容: 我有一个位置上给定用户的聊天室列表,而另一个位置上有给定聊天室的消息总数。我想跟踪用户所属聊天室中的一些消息。 我有以下片段: 问题是,稍后将调用onChildRemoved时,如何删除所有那些ValueEventListener呢?还是不再需要它们了? 建议的处理这种情况的方法是什么?我应该将子键和侦听器存储在HashMap中并自己进行跟踪,还是可以通过某种方法删除给定Firebas

  • 问题内容: 我当时在上网,但找不到很好的信息。我试图在每次运行应用程序时检测按键。我正在使用JavaFX并将其与FXML一起运行。我尝试了很多事情,但没有任何效果。请帮我。 问题答案: 您应该签出Ensemble示例。这是关键的侦听器代码。

  • 我正在使用Realex Payments的HPP API开发一个卡支付页面,其中包含一个iFrame,用于托管Realex页面。在Realex请求表单上,我将字段HPP_POST_维度和HPP_POST_响应设置为我的URL,如下所示: 付款页: www.example.com/account/payment.html 隐藏字段值用于在HPP页面大小更改和事务完成时,使用事件侦听器将数据从Real

  • 虽然计算属性在大多数情况下更合适,但有时也需要一个自定义的侦听器。这就是为什么 Vue 通过watch选项提供了一个更通用的方法,来响应数据的变化。当需要在数据变化时执行异步或开销较大的操作时,这个方式是最有用的。例如: <div id="watch-example"> <p> Ask a yes/no question: <input v-model="question">