JavaWeb pageContext对象原理解析
这篇文章主要介绍了JavaWeb pageContext对象原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
一.JSP九大内置对象
1.out:用来向客户端发送文本数据
2.config:相当Servlet中的ServletConfig
3.page:当前JSP页面对象,相当在页面中的this,不过this能用的方法更多
4.pageContext:JSP的上下文对象,一般说到上下对象立马想到四个字:共享数据,没错这个就是JSP四大域中最后一个域,另三个跟Servlet的一样,且一个顶9个,顶9个也就说明了他还能代理其他三个域。
5.excetion:只有错误页面才可使用的对象
6.request:即httpServletRequest类的对象
7.response:即httpServletResponset类的对象
8.appication:即ServeltContext类的对象,一听名字就知道一个项目就只有一个该对象
9.session:即httpSession对象
二.pageContext
1.说pageContext之前,说一下四大域的范围:
(1)appication(ServletContext):一个项目内
(2)session:一个会话内,一个会话对应一个用户,同一个会话可以跨多个请求
(3)requst:一个请求链
(4)pageContext:JSP页面内!当前JSP页面与当前JSP页面内使用的标签之间的共享数据
2.pageContext有以下“能力”:
(1)一个顶九个:其他8个内置对象它都可以获取得到并且使用,功能很强大
(2)代理其他3个域:这个不必我们多说了,既然可以获取得到其他8个内置对象,且里面很重要的3个域对象当然也可以代理
(3)全域查找:它有一个方法findAttribute(“xxx”)可以在4个域中查找某个属性,查找的顺序时从小域pageContext开始查到大域appication
3.最后提醒以下,一般我们称pageContext为page域,这个page域不是九大内置对象的Page对象,两个不同的东西
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Spring MVC之WebApplicationContext_动力节点Java学院整理
如果你使用了listener监听器来加载配置,一般在Struts+Spring+Hibernate的项目中都是使用listener监听器的.如下 Java代码 <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> Spring会创建一个WebApplicationContext上下文,称为父上下
-
Android中用RxJava和ViewPager实现轮播图
前言 很多人要实现轮播图都会想到使用ViewPager + Handler来完成轮播图的效果.但是在RxJava快速发展的情况下,已经可以使用RxJava来代替Handler完成这样任务了. 下面我们就来介绍如何实现RxJava+ViewPager的轮播图. 效果图如下 ViewPager的操作 说到ViwePager应该大家都不陌生,它可以结合普通的View也可以结合Fragment一起使用.在此我也就不对它的使用方法进行过多的介绍了.直接开始介绍轮播的方法. 常见的轮播操作 private
-
浅析javax.servlet.Servlet,ServletContext接口
1.ServletConfig接口用于描述Servlet本身的相关配置信息.ServletContext接口用于描述应用程序(server.xml中的一个Context配置,即一个虚拟目录)的相关信息.2.Servlet配置初始化参数,例如: 复制代码 代码如下: <servlet> <servlet-name>XXX</servlet-name> <servlet-class>Xxx</servlet-class> <init-param
-
Java的ThreadContext类加载器的实现
疑惑 以前在看源码的时候,总是会遇到框架里的代码使用Thread.currentThread.getContextClassLoader()获取当前线程的Context类加载器,通过这个Context类加载器去加载类. 我们平时在程序中写代码的时候,遇到要动态加载类的时候,一般使用Class.forName()的方式加载我们需要的类.比如最常见的,当我们进行JDBC编程的时候,我们通过Class.forName()去加载JDBC的驱动. try { return Class.forName("o
-
java配置context.xml文件的方法图解
修改context.xml文件 自从学习了servlet后,每次修改里面的内容后,想要访问都要重启服务器,这样感觉很麻烦的,所以今天就教大家一个方法,只需要一行代码就解决"无需重新启动服务器". 请看下面的图示: 在第19行代码处<Context>里面写上reloadable="true",然后进行保存. reloadable="true"意思是重新加载(自动刷新) 这样就可以实现无论修改什么都不需要重新启动服务器,就可以直接访
-
ServletContext读取web资源_动力节点Java学院整理
ServletContext类中有这么四个方法: getRealPath(String path) getResource(String path) getResourceAsStream(String path) getResourcePaths(String path) 这四个方法都使用web工程下某个web资源路径的字符串表现形式作为参数,而每个方法返回不同的类型,我们通过这四个方法之一可以获取某个资源,并对其进行读取和修改操作. 假设我们的[myservlet]web工程中有一个数据库的
-
Java基于ServletContextListener实现UDP监听
这篇文章主要介绍了Java基于ServletContextListener实现UDP监听,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 使用spring boot实现项目启动时的监听, UDPListener import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.DatagramPacket; import java.ne
-
servlet之ServletContext简介_动力节点Java学院整理
在对Servlet配置的web.xml文件中,经常会使用一些初始化的参数来配置Servlet,总的功能来说就是不在Servlet程序中将某个变量写死,而是通过外界(如web.xml文件)进行传递,同时便于修改.这个是使用<servlet>标签下的<init-param>标签,使用<init-param>标签的<param-name>和<param-value>来封装一个键值对,可以使用多个<init-param>标签进行多个初始化参数
-
浅谈java分页三个类 PageBean ResponseUtil StringUtil
如下所示: package ssmy.page; /** * 分页类 * @author Jesse * */ public class PageBean { private int page;//第几页 private int pageSize;//每页显示的记录数 private int start ;//起始记录数 public int getPage() { return page; } public void setPage(int page) { this.page = page;
-
JavaWeb pageContext对象原理解析
这篇文章主要介绍了JavaWeb pageContext对象原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.JSP九大内置对象 1.out:用来向客户端发送文本数据 2.config:相当Servlet中的ServletConfig 3.page:当前JSP页面对象,相当在页面中的this,不过this能用的方法更多 4.pageContext:JSP的上下文对象,一般说到上下对象立马想到四个字:共享数据,没错这个就是JSP四大域中
-
javascript History对象原理解析
这篇文章主要介绍了javascript History对象原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 length history.length属性保存着历史记录的URL数量.初始时,该值为1.由于IE10+浏览器在初始时返回2,存在兼容性问题,所以该值并不常用 跳转方法 go().back()和forward() 如果移动的位置超出了访问历史的边界,以上三个方法并不报错,而是静默失败 [注意]使用历史记录时,页面通常从浏览器缓存之
-
Python可变对象与不可变对象原理解析
一.原理 可变对象:list dict set 不可变对象:tuple string int float bool 1. python不允许程序员选择采用传值还是传引用.Python参数传递采用的肯定是"传对象引用"的方式.实际上,这种方式相当于传值和传引用的一种综合.如果函数收到的是一个可变对象的引用,就能修改对象的原始值--相当于通过"传引用"来传递对象.如果函数收到的是一个不可变对象的引用,就不能直接修改原始对象--相当于通过"传值'来传递对象. 2
-
UDP连接对象原理解析及使用实例
之前写了一个简单的UDP服务端和客户端示例,用于入门UDP,当我实际使用时发生了一点问题! 上次使用中我也把连接对象 DatagramSocket 写成了静态的,在类的初始化时使用,可是系统中有很多地方使用,难道我要不断的创建这个类的对象吗? 可以这么做,当时有后果,后果就是内存溢出. UDP是没有状态的,DatagramSocket 创建一次即可,就是开始指向某个地址的端口,而不用每次创建. 由于UDP是无状态的,在创建 DatagramSocket 对象时只是创建了一个指向网络的对象,就像你
-
JavaScript对象原型链原理解析
这篇文章主要介绍了JavaScript对象原型链原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一个js对象,除了自己设置的属性外,还会自动生成proto.class.extensible属性,其中,proto属性指向对象的原型. 对象的属性也有writable.enumerable.configurable.value和get/set的配置方法. 对象的创建方式有三种: 一.使用字面量直接创建. 二.基于原型链创建. 分析上图,要点如
-
java对象序列化与反序列化原理解析
这篇文章主要介绍了java对象序列化与反序列化原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.序列化和反序列化的概念 对象转换为字节序列的过程称为对象的序列化.把字节序列恢复为对象的过程称为对象的反序列化. 二.序列化和反序列化的作用 对象的序列化主要有两种用途: 把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中. 在网络上传送对象的字节序列.网络上传输的都是二进制序列. 在很多应用中,需要对某些对象进行序列化,让它们离开内
-
Java 并发编程:volatile的使用及其原理解析
Java并发编程系列[未完]: •Java 并发编程:核心理论 •Java并发编程:Synchronized及其实现原理 •Java并发编程:Synchronized底层优化(轻量级锁.偏向锁) •Java 并发编程:线程间的协作(wait/notify/sleep/yield/join) •Java 并发编程:volatile的使用及其原理 一.volatile的作用 在<Java并发编程:核心理论>一文中,我们已经提到过可见性.有序性及原子性问题,通常情况下我们可以通过Synchroniz
-
Java 8 动态类型语言Lambda表达式实现原理解析
Java 8支持动态语言,看到了很酷的Lambda表达式,对一直以静态类型语言自居的Java,让人看到了Java虚拟机可以支持动态语言的目标. import java.util.function.Consumer; public class Lambda { public static void main(String[] args) { Consumer<String> c = s -> System.out.println(s); c.accept("hello lambd
-
JavaScript中的return布尔值的用法和原理解析
首先return作为返回关键字,他有以下两种返回方式 1.返回控制与函数结果 语法为:return 表达式; 语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果 2.返回控制无函数结果 语法为:return;在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个<A>元素,页面会跳转到该元素href属性指定的页. 例如:<a href="http:www.baidu.com;alert(11);return false;ale
-
Javaweb中使用Jdom解析xml的方法
一.前言 Jdom是什么? Jdom是一个开源项目,基于树形结构,利用纯java的技术对XML文档实现解析,生成,序列化以及多种操作.它是直接为java编程服务,利用java语言的特性(方法重载,集合),把SAX和DOM的功能结合起来,尽可能的把原来解析xml变得简单,我们使用Jdom解析xml会是一件轻松的事情. Jdom的优点: 1.Jdom专用于java技术,比Dom应用占用更少内存. 2.Jdom提供更加简单和逻辑性访问xml信息的基础方法 3.除xml文件外,Jdom还可以访问其他的数
随机推荐
- C++中构造函数的参数缺省的详解
- ios8 UITableView设置 setSeparatorInset UIEdgeInsetsZero不起作用的解决办法(去掉15px空白间距)
- java中通过网卡名称获取IP地址
- 检测oracle数据库坏块的方法
- Java Web开发过程中登陆模块的验证码的实现方式总结
- 使用正则替换变量
- asp.net TextBox回车触发事件 图片在img显示
- 详解node.js平台下Express的session与cookie模块包的配置
- Java实现选择排序算法的实例教程
- 详解vue前后台数据交互vue-resource文档
- 关于Jquery中的事件绑定总结
- 查看linux中某个端口(port)是否被占用的方法
- 浅谈MySQL模糊查询中通配符的转义
- php用户登录之cookie信息安全分析
- 实现无刷新联动例子汇总
- 我教你学之注册表根键
- C#中面向对象编程机制之多态学习笔记
- java时间相关处理小结
- 详谈Java中net.sf.json包关于JSON与对象互转的坑
- swing jtextArea滚动条和文字缩放效果