文章目录
四种属性范围
graph LR
A((同一页面)) -->B((同一请求))
B-->C((同一用户))
C-->D((同一项目))
-
pageContent不可以跨页面传输数据 限于本页面内传输数据 创建页面对象时创建 页面关闭则回收pageContext.setAttribute(key,value); pageContext.getAttribute(key); -
request内置对象只在当前请求有效 在服务器内跳转时数据不丢失 但在客户端浏览器跳转则会 当请求被接受时创建request.setAttribute(key,value); request.getAttribute(key); -
session内置对象在一个会话有效(无论是服务器或者浏览器跳转)一个浏览器只发出一个会话 跨页面和请求
session内置对象不应存过多数据
因为存tomcat服务器内,会一直保持数据,默认30分刷新一次(客户端无任何操作时)第一次请求的发送时创建(sessionID) 销毁时间不确定session.setAttribute(key,value); session.getAttribute(key); -
application内置对象在一个服务器期间内有效 无论跨浏览器或者服务器浏览器跳转 故更不应该存大量数据 数据会一直保持 而且任何用户可获取(统计在线人数 现时间)
释放application只有重启服务器才可以application.setAttribute(key,value); application.getAttribute(key);
内置对象数据(属性值 非参数值)的保存会占用服务器内存 数据其实都是存在服务器内部 数据过多则会降低服务器性能 可以满足要求下优先使用前面的属性范围
本文详细解析了Java Web应用程序中的四种作用域:page、request、session与application,阐述了它们的数据生命周期、适用场景及如何正确使用这些作用域来管理数据。
994

被折叠的 条评论
为什么被折叠?



