文档章节

JSP九大作用域

j
 javaalex
发布于 2017/09/05 15:47
字数 1031
阅读 4
收藏 0
点赞 0
评论 0

jsp的九大作用域:

request           请求对象             类型 javax.servlet.ServletRequest        作用域 Request
response          响应对象              类型 javax.servlet.SrvletResponse        作用域 Page
pageContext       页面上下文对象        类型 javax.servlet.jsp.PageContext       作用域 Page
session           会话对象              类型 javax.servlet.http.HttpSession      作用域 Session
application       应用程序对象          类型 javax.servlet.ServletContext        作用域 Application
out               输出对象              类型 javax.servlet.jsp.JspWriter         作用域 Page
config            配置对象              类型 javax.servlet.ServletConfig         作用域 Page
page              页面对象              类型 javax.lang.Object                   作用域 Page
exception         例外对象              类型 javax.lang.Throwable                作用域 page
  1. application:是代表Web应用本身,可用于jsp页面,或者在Servlet中交换信息。常用方法有:
String getAttribute(String name)                                     根据属性名称获取属性值。
Enumeration getAttributeNames()	                                获取所有的属性名称。
void setAttribute(String name, Object object)	                设置属性,指定属性名称和属性值。
void removeAttribute(String name)	                                根据属性名称删除对应的属性。
 ServletContext getContext(String uripath)	                获取指定URL的ServletContext对象。
String getContextPath()	                                                获取当前Web应用程序的根目录。
String getInitParameter(String name)	                        根据初始化参数名称,获取初始化参数值。
int getMajorVersion()	                                                获取Servlet API的主版本号。
int getMinorVersion()	                                                获取Servlet API的次版本号。
String getMimeType(String file)	                                获取指定文件的MIME 类型。
String getServletInfo()	                                                获取当前Web服务器的版本信息。
String getServletContextName()	                                获取当前Web应用程序的名称。
void log(String message)	                                        将信息写入日志文件中。



 使用application对象获取初始化参数
(1) 一 般来说,在web.xml文件中,设置初始化参数有如下两种方式:
n 设置系统范围内的初始化参数
n 针对单个Servlet文件或JSP文件设置初始化参数
 
对于系统范围内的初始化参数,可通过ServletContext 接口的getInitParameter(String name)方法,根据指定的参数名,获取对应的参数值。
对于针对单个Servlet文件或JSP文件设置初始化参数,可通过ServletConfig接口的 getInitParameter(String name)方法,根据指定的参数名,获取对应的参数值。
(2) 如何设置系统范围内的初始化参数
在web.xml文件中,可利用context-param元素来设置系统范围内的初始化参数。context-param元素应该包含param-name、param-value以及可选的description子元素,如下所示:
<context-param>
<param-name>support-email</param-name>
<param-value>blackhole@mycompany.com</param-value>
</context-param>
web.xml文件的示例:
<?xml version=”1.0″ encoding=”UTF-8″?>
<web-app version=”2.4″
xmlns=”http://java.sun.com/xml/ns/j2ee”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd”>
<context-param>
<param-name>appName</param-name>
<param-value>MyWebTest</param-value>
</context-param>
<context-param>
<param-name>appVersion</param-name>
<param-value>Version 1.0</param-value>
</context-param>
<welcome-file-list>
<welcome-file>MyTest01.jsp</welcome-file>
</welcome-file-list>
</web-app>
 
测试代码
TestApplication02.jsp
 
<%@ page language=”java” contentType=”text/html; charset=GBK” %>
<% request.setCharacterEncoding(“GBK”); %>
<html>
<body>
<%–使用application对象获取系统范围内的初始化参数–%>
<font color=”Red”>使用application对象获取初始化参数:</font>
<br>
<%
String appName = getServletContext().getInitParameter(“appName”);
String appVersion = getServletContext().getInitParameter(“appVersion”);
%>
应用程序的名称:<%=appName%><br>
应用程序的版本:<%=appVersion%>
</body>
</html>
  1. config:这是一个对于jsp而言是无用的对象,因为该实例代表jsp的配置信息,而jsp页面通常没有必要配置,也就不存在配置信息。因此config更多地在Servlet中起用。

  2. exception:只有当页面是错误处理页面即编译指令page的isErrorpage属性为true时才可以使用。常用方法:

getmessage(),printstacktrace();
  1. out:该实例代表jsp页面的输出流,用于输出内容,形成HTML页面。

  2. request:该实例是javax.servlet.http.httpservletrequest的实例,该对象封装一次请求,客户端的请求参数都被封装到该对象里,这是一个客户端请求参数必须使用的对象。

  3. response:该实例常用于重定向,方法有:

getoutputstream(),sendredirect();
  1. page:代表该页面本身,作用不大。也就是servlet中的this,能用page的地方就能用this。

  2. pagecontext:该实例代表该jsp页面的上下文,使用该对象可以访问页面中的共享数据。

  3. session:代表一次会话,当客户端关闭浏览器时,会话结束。

四大作用域:

作用域:是连接jsp和servlet的桥梁,让jsp和servlet可以交换数据。

  1. application:对于整个页面有效。

  2. session:对于一次会话有效。

  3. request:对于本次请求有效。

  4. page:仅对于当前页面有效。

© 著作权归作者所有

共有 人打赏支持
j
粉丝 0
博文 21
码字总数 11679
作品 0
合肥
七、JSP九大内置对象和四个作用域

九大内置对象: request:类型是HttpServletRequest,和Servlet里的HttpServletRequest一模一样。 response:类型是HttpServletResponse,和Servlet里的HttpServletResponse一模一样。JSP里基...

Wakeeee_
07/16
0
0
servlet/jsp基础复习

servlet就是一个普通的Java类,类对象由服务器(容器)创建,实现请求,响应交互数据。 实现第一个servlet继承HTTPservlet重写doget,dopost方法。其实servlet执行处理请求时候都会调用父类s...

hello_hp
2017/10/20
0
0
JSP 学习总结---学习笔记

什么是JSP 1)为什么说,Servlet是一个动态Web开发技术呢? Servlet是基于服务端的一种动态交互技术, HttpServletRequest表示客户端到服务端的对象 HttpServletResponse表示服务端到客户端的...

知止内明
04/18
0
0
@include与jsp:include的区别

1.可以使用一个JSP指令或者一个标准行为,在JSP页面中引入其他的页面片段。 2. include指令:在翻译阶段(将JSP页面转换成servlet的阶段),JSP的include指令会读入指定的页面中的内容,并将...

随智阔
2014/03/08
0
0
(JavaEE-08)JSP九大隐式对象

JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理。JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet) ,然后按照servlet的调用...

_-Leon-_
2014/07/07
0
0
JSP的九大内置对象和四个作用域

//附上jsp转换成servlet后的java代码 package org.apache.jsp; import javax.servlet.;import javax.servlet.http.;import javax.servlet.jsp.;import java.util.; public final class index......

王大叔爱编程
2014/09/30
0
0
page request session application作用域(转)

几乎所有的Web开发语言都支持Session功能,Servlet也不例外。Servlet/JSP中的Session功能就是通过作用域(scope)这个概念来实现的。 作用域分为四种,分别为: Page:在当前页面有效(仅用于J...

盛夏的白菜土豆西红柿
2013/09/10
0
0
重温JSP学习笔记--三大指令九大内置对象

最近在温习javaweb的相关基础知识,鉴于我弄丢了记满了整整一本的笔记,决定以后把笔记和一些学习上的心得以及碰到的一些问题统统都放在网上,今天看了一下jsp的相关基础,以下是笔记:   JSP三...

冬至饮雪
2016/01/26
0
0
DispatcherServlet的用法

DispatcherServlet实际上是一个Servlet(它从HttpServlet继承而来)。和其它Servlet一样,DispatcherServlet定义在web应用的web.xml文件里。DispatcherServlet处理的请求必须在同一个web.xml文...

sch_1986
2012/08/01
0
0
浅谈ServletContext 与application的异同

servletContext接口是Servlet中最大的一个接口,呈现了web应用的Servlet视图。ServletContext实例是通过 getServletContext()方法获得的,由于HttpServlet继承Servlet的关系GenericServlet类...

小欣妹妹
2017/11/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Git 2.18版本发布:支持Git协议v2,提升性能

Git 2.18版本发布:支持Git协议v2,提升性能Git 2.18版本发布:支持Git协议v2,提升性能 新版本协议的主要驱动力是使 Git 服务端能够对各种 ref(分支与 tag)进行过滤操作。 这就意味着,G...

linux-tao
22分钟前
0
0
python浏览器自动化测试库【2018/7/22-更新】

64位py2.7版本 更新 document_GetResources 枚举页面资源 document_GetresourceText 获取指定url的内容 包括页面图片 下载地址下载地址 密码:upr47x...

开飞色
38分钟前
27
0
关于DCL双重锁失效及解决方案

关于DCL双重锁失效及解决方案 Double Check Lock (DCL)实现单例 DCL 方式实现单例的优点是既能够在需要时才初始化单例,又能够保证线程安全,且单例对象初始化后调用getInstance方法不进行...

DannyCoder
44分钟前
0
0
PowerDesigner 16.5 安装配置

PowerDesigner16.5破解版是一款业内领先且开发人员常用的数据库建模工具,PowerDesigner可以从物理和概念两个层面设计数据库,方便用户制作处清晰直观的数据流程图和结构模型,欢迎有需要的朋...

Gibbons
今天
0
0
mac Homebrew 指令积累

1通用命令 brew install [包名] //安装包 brew list //列举安装的包 brew info [包名] // 显示安装包的详细信息 mysql 相关 #启动mysql 服务 brew service start mysql my...

Kenny100120
今天
0
0
前端Tips: 创建, 发布自己的 Vue UI 组件库

创建, 发布自己的 Vue UI 组件库 前言 在使用 Vue 进行日常开发时, 我们经常会用到一些开源的 UI 库, 如: Element-UI, Vuetify 等. 只需一行命令, 即可方便的将这些库引入我们当前的项目: n...

ssthouse_hust
今天
1
0
大数据教程(2.13):keepalived+nginx(多主多活)高可用集群搭建教程【自动化脚本】

上一章节博主为大家介绍了目前大型互联网项目的keepalived+nginx(主备)高可用系统架构体系,相信大家应该看了博主的文章对keepalived/nginx技术已经有一定的了解,在本节博主将为大家分享k...

em_aaron
今天
5
0
Git 2.18版本发布:支持Git协议v2,提升性能

在最新的官方 Git 客户端正式版2.18中添加了对 Git wire 协议 v2 的支持,并引入了一些性能与 UI 改进的新特性。在 Git 的核心团队成员 Brandon Williams 公开宣布这一消息前几周,Git 协议 ...

六库科技
今天
0
0
Java8新特性之接口

在JDK8以前,我们定义接口类中,方法都是抽象的,并且不能存在静态方法。所有的方法命名规则基本上都是 public [返回类型] [方法名](参数params) throws [异常类型] {}。 JDK8为接口的定义带...

developlee的潇洒人生
今天
0
0
aop + annotation 实现统一日志记录

aop + annotation 实现统一日志记录 在开发中,我们可能需要记录异常日志。由于异常比较分散,每个 service 方法都可能发生异常,如果我们都去做处理,会出现很多重复编码,也不好维护。这种...

长安一梦
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部