jsp九大内置对象和四大作用域_JSP学习3
JSP
注意: srcmain 下除了放java文件夹和resources文件夹, 不建议放其他文件夹.
其他文件夹建议放在web/statics下, 包括img, css, js, plugins等等
9大内置对象
- PageContext (存东西)
- Request (存东西)
- Response
- Session (存东西)
- Application (ServletContext) (用来存东西)
- config (ServletConfig)
- out
- page (基本不用了解)
- exception
pageContextDemo01.jsp
<%--Created by IntelliJ IDEA.User: asusDate: 2020/6/9Time: 23:20To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body>
<%--内置对象--%>
<%pageContext.setAttribute("name1", "num1"); //保存的数据只在一个页面中有效request.setAttribute("name2", "num2"); //保存的数据只在一次请求中有效, 请求转发会携带这个数据session.setAttribute("name3", "num3"); //保存的数据只在一次会话中有效, 从打开浏览器到关闭浏览器有效application.setAttribute("name4", "num4"); //保存的数据只在服务器中有效, 从打开服务器到关闭服务器有效%>
<%--脚本片段中的代码, 会被原封不动生成到JSP.java
要求: 这里面的代码, 必须保证Java语法的正确性--%><%
// 从pageContext取出, 我们通过寻找的方式来
// 从底层到高层(作用域)String name1 = (String)pageContext.getAttribute("name1");String name2 = (String)pageContext.getAttribute("name2");String name3 = (String)pageContext.getAttribute("name3");String name4 = (String)pageContext.getAttribute("name4");String name5 = (String)pageContext.getAttribute("name5"); //不存在// pageContext.forward("pageDemo02.jsp");
// 加入上述语句后pageDemo02.jsp运行结果将多出num2一行.%><%--使用EL表达式输出--%><h1>取出的值为:</h1>
<h3>${name1}</h3>
<h3>${name2}</h3>
<h3>${name3}</h3>
<h3>${name4}</h3>
<h3>${name5}</h3>
<h3><%=name5%>></h3>
</body>
</html>
最终的显示结果:
num1
num2
num3
num4
null
pageDemo02.jsp
<%--Created by IntelliJ IDEA.User: asusDate: 2020/6/9Time: 23:56To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body>
<%
// 从pageContext取出, 我们通过寻找的方式来
// 从底层到高层(作用域)String name1 = (String)pageContext.getAttribute("name1");String name2 = (String)pageContext.getAttribute("name2");String name3 = (String)pageContext.getAttribute("name3");String name4 = (String)pageContext.getAttribute("name4");String name5 = (String)pageContext.getAttribute("name5"); //不存在%><%--使用EL表达式输出--%><h1>取出的值为:</h1>
<h3>${name1}</h3>
<h3>${name2}</h3>
<h3>${name3}</h3>
<h3>${name4}</h3>
<h3><%=name5%>></h3>
</body>
</html>
最终的显示结果:
num3
num4
null
寻找过程:
Page->Request->Session->Application->null
JVM: 双亲委派机制类似
request: 客户端向服务器发送请求, 产生的数据, 用户看完就没用了, 比如: 新闻, 用户看完没用的
session: 客户端向服务器发送请求, 产生的数据, 用户用完一会儿还有用, 比如: 购物车;
application: 客户端向服务器发送请求, 产生的数据, 一个用户用完了, 其他用户还可能使用, 比如: 聊天数据;
jsp九大内置对象和四大作用域_JSP学习3相关推荐
- JSP九大内置对象和四大作用域和Servlet的三大作用域对象
一.JSP九大内置对象:内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用 内置对象特点: 由JSP规范提供,不用编写者实例化. 通过Web容器实现和管理 所有 ...
- 小汤学编程之JavaEE学习day03——JSP组成结构、JSP原理、JSP生命周期、JSP九大内置对象、四大作用域、JSP的MVC模式
一.JSP组成结构 二.JSP的原理 1.JSP的运行原理 2.分析JSP所生成的Servlet代码 3.JSP的执行过程 三.JSP生命周期 四.JSP九大内置对象 五.JSP四大作 ...
- JSP九大内置对象,四大作用域
JSP九大内置对象 内置对象是在java脚本不需要创建,就可以直接使用的对象. ①request:代表请求 (用得多) HttpServletRequest对象.就是servlet里面的request ...
- jsp 九大内置对象 和 四大作用域的区别
JSP中一共有九个内置的对象,分别是:request.response.session.application.out.pagecontext.config.page.exception 1.requ ...
- easyui不同的jsp页面之间混乱_16.jsp九大内置对象,四大作用域
更多内容来源:http://mp.weixin.qq.com/mp/homepage?__biz=MzA5OTQ1ODE1NQ==&hid=6&sn=843337a7d99318392 ...
- JSP的三六九四七(三大指令、六大标签、九大内置对象、四大作用域、七个动作指令)
JSP的基本构成:HTML文件+Java片断+JSP标签 三大指令:page指令.include指令.taglib指令. page指令: 1.language属性:设置当前页面中编写JSP脚本使用的语 ...
- html四大作用域,JSP的三六九四(三大指令、六大标签、九大内置对象、四大作用域)...
JSP的基本构成:HTML文件+Java片断+JSP标签 三大指令:page指令.include指令.taglib指令. page指令: 1.language属性:设置当前页面中编写JSP脚本使用的语 ...
- jsp的九大内置对象和四大作用域
看到网上一些Jsp内置对象介绍的都不是很全,今天我把各位大神的整理了一下. JSP九大对象:内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用. 一.reque ...
- JSP中九大内置对象与四大作用域
四大作用域: 1.servletcontext域(application域) 作用的范围是:整个web应用程序. 数据产生之后,不仅等会还要用 ,还要给别人用,则使用servletcontext. 作 ...
最新文章
- 我们单位里新来的应届毕业生(转贴)
- codevs 2612 最有分解方案 (贪心)
- Python入门100题 | 第036题
- SpringBoot整合RabbitMQ 实现五种消息模型
- 64位服务器IIS不能识别32位framework版本。IIS没有Asp.net切换界面的解决办法。
- 独家:Havok 发布新的 AI 中间件
- 2.6 Word2Vec
- bzoj 1005: [HNOI2008]明明的烦恼(prufer数列)
- 产品设计体会(8007)产品经理的主要职责
- 切换Pycharm的Python版本
- 了解华为HCIP认证
- tensorflow 77 tensorflow android版本demo win10 下 编译
- 时间管理表 - 《周计划表》
- python中的计数函数_Python Numpy统计函数
- 电脑怎么设置计算机系统,细说电脑怎么设置wifi
- java开源魂斗罗源代码_C++魂斗罗源代码
- 数据库(mysql)之事务和存储引擎
- 如何在word中使用latex输入下括号?
- 企业为何都用电子招投标 现代电子招投标系统介绍
- oracle goldengate 数据库复制配置手册
热门文章
- JSP中include指令的乱码问题
- unique函数_走进C++11(三十四)unique_ptr
- Nginx配置服务器静态文件支持跨域访问
- PHP利用反射根据类名反向寻找类所在文件
- codeforces 960A Check the string
- [译] 这可能是 2018 年最好的一篇 PHP 性能测评(包含 5.6 到 7.2,以及 HHVM)
- Ubuntu 14.04 hadoop单机安装
- CSS hack浏览器兼容一览表
- 在线即时通讯工具的网页即时聊天的html代码
- 局域网内同时使用两台路由器的配置方法