以下是第5章的第15个问题:
当会话即将超时时,可以使用哪种方法让容器通知您的应用程序? (选择所有适用的选项。)
A. HttpSessionListener sessionDestroyed B. HttpSessionBindingListener valueBound C. HttpSessionBindingListener valueUnbound D. HttpSessionBindingEvent sessionDestroyed E. HttpSessionAttributeListener attributeRemoved F. HttpSessionActivationListener sessionWillPassivate
正确的答案是A和C.选项E的解释是“选项E:删除属性与会话超时紧密相关”
现在我的问题是这个..当我试图使无效或设置0秒的到期时间时,选项A C E被触发。所以要求所有WCD认证,你们能解释为什么选项E不正确吗?
答案 0 :(得分:0)
我认为他们的问题措辞不合理。您可以“要求容器在会话即将超时时通知您的应用程序”来自任何这些地方,或者没有任何地方。
更好的措辞可能是:
如果您想收到通知,应该实施哪些接口 会话何时即将超时?
但无论如何,JavaDoc总是一个好的起点。您不会使用attributeRemoved()
来跟踪会话超时,因为会话可以具有任意数量的属性,任何一个属性都可以随时删除,无论会话是否过期。因此,删除属性这一事实并不是会话超时的可靠指标。正如官方解释所说,“删除属性与会话超时没有紧密关联”。我认为它甚至不会松散与会话超时相关联。
免责声明:我不是任何一种认证。我只是以此为生。