JSP中的九大内置对象
JSP九大内置对象
- pageContext 存东西
- Request 存东西
- Response
- Session 存东西
- Application(servletContext) 存东西
- config(servletContext)
- out
- page (几乎不用)
- exception
我们只需要清楚可以存东西的四个对象就可以了!
<%--内置对象--%>
<%--作用域是从底层到高层--%>
<%
pageContext.setAttribute("name1","1");//保存的数据只在一个页面中有效
request.setAttribute("name2","2");//保存的数据只在一次请求中有效
session.setAttribute("name3","3");//保存的数据只在一次会话中有效
application.setAttribute("name4","4");//保存的数据只在服务器中有效
%>
<%--脚本片段中的代码会被原封不动的生成到jsp.java--%>
<%
//用pageContext取出,通过寻找方式来
String name1 = (String) pageContext.findAttribute("name1");
String name2 = (String) pageContext.findAttribute("name2");
String name3 = (String) pageContext.findAttribute("name3");
String name4 = (String) pageContext.findAttribute("name4");
String name5 = (String) pageContext.findAttribute("name5");//name5不存在
%>
<h1>取出的值:</h1>
<%--用el表达式输出,取值一般都用el表达式--%>
<h3>${name1}</h3>
<h3>${name2}</h3>
<h3>${name3}</h3>
<h3>${name4}</h3>
<h3>${name5}</h3>
<%--脚本片段中的代码会被原封不动的生成到jsp.java--%>
<%
//用pageContext取出,通过寻找方式来
String name1 = (String) pageContext.findAttribute("name1");
String name2 = (String) pageContext.findAttribute("name2");
String name3 = (String) pageContext.findAttribute("name3");
String name4 = (String) pageContext.findAttribute("name4");
String name5 = (String) pageContext.findAttribute("name5");//name5不存在
%>
<h1>取出的值:</h1>
<%--用el表达式输出,取值一般都用el表达式--%>
<h3>${name1}</h3>
<h3>${name2}</h3>
<h3>${name3}</h3>
<h3>${name4}</h3>
<h3>${name5}</h3>
重点:从一个jsp(页面)中存数据,从另一个jsp(页面)中取数据,我们能把数据取到吗?
答:pageContext,Request的值不能取道,Session,Application的值可以取到,这里就涉及到这四个对象的作用域(已写在代码注释中)的问题了。
树越是向往高处的光亮,它的根就越要向下,向泥土向黑暗的深处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?