【问题标题】:What's the difference between the methods findAttribute() and getAttribute() in servlet?servlet 中的 findAttribute() 和 getAttribute() 方法有什么区别?
【发布时间】:2014-06-09 07:32:04
【问题描述】:

如果我将“cart”设置为会话属性,那么 servlet 文件中的方法 pageContext.findAttribute("cart")session.getAttribute("cart") 有什么区别? 在这种情况下他们会做同样的事情吗?

【问题讨论】:

    标签: java jakarta-ee servlets jstl


    【解决方案1】:

    阅读 PageContext.findAttribute() 的 Javadoc 真的太费劲了吗?

    PageContext 在多个范围内查找属性(页面、请求、会话然后是应用程序),而 session.getAttribute() 仅在会话中查找。如果您知道该属性在会话中,那么session.getAttribute() 应该(略微)更快。

    【讨论】:

      【解决方案2】:

      Object findAttribute (String AttributeName):此方法在所有四个级别中按以下顺序搜索指定属性——页面、请求、会话和应用程序。在任何级别都找不到属性时返回 NULL。

      session.getAttribute("cart"):该方法只在Session范围内搜索指定的属性。

      在这种情况下他们会做同样的事情吗? => 如果您在 Page, Request 中没有属性名称 cart,他们在这种情况下会做同样的事情。

      【讨论】:

        猜你喜欢
        • 2015-11-25
        • 1970-01-01
        • 2010-12-01
        • 2011-01-06
        • 1970-01-01
        • 2011-03-18
        • 1970-01-01
        • 1970-01-01
        • 2011-04-28
        相关资源
        最近更新 更多