【发布时间】:2014-06-09 07:32:04
【问题描述】:
如果我将“cart”设置为会话属性,那么 servlet 文件中的方法 pageContext.findAttribute("cart") 和 session.getAttribute("cart") 有什么区别?
在这种情况下他们会做同样的事情吗?
【问题讨论】:
标签: java jakarta-ee servlets jstl
如果我将“cart”设置为会话属性,那么 servlet 文件中的方法 pageContext.findAttribute("cart") 和 session.getAttribute("cart") 有什么区别?
在这种情况下他们会做同样的事情吗?
【问题讨论】:
标签: java jakarta-ee servlets jstl
阅读 PageContext.findAttribute() 的 Javadoc 真的太费劲了吗?
PageContext 在多个范围内查找属性(页面、请求、会话然后是应用程序),而 session.getAttribute() 仅在会话中查找。如果您知道该属性在会话中,那么session.getAttribute() 应该(略微)更快。
【讨论】:
Object findAttribute (String AttributeName):此方法在所有四个级别中按以下顺序搜索指定属性——页面、请求、会话和应用程序。在任何级别都找不到属性时返回 NULL。
session.getAttribute("cart"):该方法只在Session范围内搜索指定的属性。
在这种情况下他们会做同样的事情吗? => 如果您在 Page, Request 中没有属性名称 cart,他们在这种情况下会做同样的事情。
【讨论】: