jsp页面9中隐含对象和4个作用域对象

2024-03-19 14:08

本文主要是介绍jsp页面9中隐含对象和4个作用域对象,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

JSP的隐含对象:
不需要new,就可以直接使用的一组对象。
tomcat自动创建,只能使用在表达式脚本<%= %>和普通脚本<% %>中。
1、request【重点】
类型:javax.servlet.http.HttpServletRequest
方法:request.getParameter("txtUsername");
request.setCharacterEncoding("gbk");
request.setAttribute(String, Object)
request.getAttribute(String);
request.getSession(true);
request.getRequestDispatcher("/url-pattern");
request.getCookies();
2、session【重点】
类型:javax.servlet.http.HttpSession
方法:session.getId()
session.setAttribute(String, Object)
session.getAttribute(String)
session.removeAttribute(String)
session.invalidate()
开始:client第1次发出JSP请求时,session即开始
结束:超时,invalidate()
3、response
类型:javax.servlet.http.HttpServletResponse
方法:response.setContentType("text/html");
response.getWriter();
response.setCharacterEncoding("gbk");
response.sendRedirect("/web应用名/url-pattern");
4、out
类型:javax.servlet.jsp.JspWriter
方法:out.print()//往IE打印
out.println()//往IE打印,在源代码中添加换行
out.write()//往IE打印,通常用户打印常量
5、application
类型:javax.servlet.ServletContext
方法:application.getInitParameter("name");
application.setAttribute(String, Object)
application.getAttribute(String)
application.removeAttribute(String)
6、page
类型:java.lang.Object
代表当前JSP页面,可以理解成this,jsp是特殊的servlet类,生成jsp页面也就生成相应的servlet实例。page代表当前servlet对象实例,一般不用。
7、config
类型:javax.servlet.ServletConfig
8、exception
类型:java.lang.Throwable
只能使用在 <%@ page isErrorPage="true" %>的JSP中。
9、pageContext




  它是pageContext的对象,PageContext是JspContext的子类 




1) 可以获取其它8个隐含对象
JspWriter o = pageContext.getOut();
2) 作用域(JSP中一共有4个作用域对象,从小到大:pageContext、request、session、application)
当前请求中的一个页面
类型:javax.servlet.jsp.PageContext
方法:pageContext.setAttribute(String, Object);
pageContext.getAttribute(String);
3)可以访问其它3个作用域中的命名属性
//从4个作用域从小到大搜索指定的命名属性,找到即停止
方法:pageContext.findAttribute(String);//jspContext里面的方法
//从指定作用域中获取命名属性
pageContext.getAttribute("name", PageContext.APPLICATION_SCOPE)

4)include/forward


jsp四种作用域对象

pageContext,request,session,application


servlet三种作用域对象

request,session,application


EL中的四个作用域对象

pageScope,requestScope,sessionScope,applicationScope

这篇关于jsp页面9中隐含对象和4个作用域对象的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/826238

相关文章

如何在页面调用utility bar并传递参数至lwc组件

1.在app的utility item中添加lwc组件: 2.调用utility bar api的方式有两种: 方法一,通过lwc调用: import {LightningElement,api ,wire } from 'lwc';import { publish, MessageContext } from 'lightning/messageService';import Ca

Java第二阶段---09类和对象---第三节 构造方法

第三节 构造方法 1.概念 构造方法是一种特殊的方法,主要用于创建对象以及完成对象的属性初始化操作。构造方法不能被对象调用。 2.语法 //[]中内容可有可无 访问修饰符 类名([参数列表]){ } 3.示例 public class Car {     //车特征(属性)     public String name;//车名   可以直接拿来用 说明它有初始值     pu

HTML5自定义属性对象Dataset

原文转自HTML5自定义属性对象Dataset简介 一、html5 自定义属性介绍 之前翻译的“你必须知道的28个HTML5特征、窍门和技术”一文中对于HTML5中自定义合法属性data-已经做过些介绍,就是在HTML5中我们可以使用data-前缀设置我们需要的自定义属性,来进行一些数据的存放,例如我们要在一个文字按钮上存放相对应的id: <a href="javascript:" d

PHP7扩展开发之对象方式使用lib库

前言 上一篇文章,我们使用的是函数方式调用lib库。这篇文章我们将使用对象的方式调用lib库。调用代码如下: <?php $hello = new hello(); $result = $hello->get(); var_dump($result); ?> 我们将在扩展中实现hello类。hello类中将依赖lib库。 代码 基础代码 这个扩展,我们将在say扩展上增加相关代码。sa

【C++】作用域指针、智能指针、共享指针、弱指针

十、智能指针、共享指针 从上篇文章 【C++】如何用C++创建对象,理解作用域、堆栈、内存分配-CSDN博客 中我们知道,你的对象是创建在栈上还是在堆上,最大的区别就是对象的作用域不一样。所以在C++中,一旦程序进入另外一个作用域,那其他作用域的对象就自动销毁了。这种机制有好有坏。我们可以利用这个机制,比如可以自动化我们的代码,像智能指针、作用域锁(scoped_lock)等都是利用了这种机制。

js私有作用域(function(){})(); 模仿块级作用域

摘自:http://outofmemory.cn/wr/?u=http%3A%2F%2Fwww.phpvar.com%2Farchives%2F3033.html js没有块级作用域,简单的例子: for(var i=0;i<10;i++){alert(i);}alert(i); for循环后的i,在其它语言像c、java中,会在for结束后被销毁,但js在后续的操作中仍然能访

hibernate修改数据库已有的对象【简化操作】

陈科肇 直接上代码: /*** 更新新的数据并并未修改旧的数据* @param oldEntity 数据库存在的实体* @param newEntity 更改后的实体* @throws IllegalAccessException * @throws IllegalArgumentException */public void updateNew(T oldEntity,T newEntity

Weex入门教程之3,使用 Vue 开发 Weex 页面

环境安装 在这里简略地介绍下,详细看官方教程 Node.js 环境 Node.js官网 通常,安装了 Node.js 环境,npm 包管理工具也随之安装了。因此,直接使用 npm 来安装 weex-toolkit。 npm 是一个 JavaScript 包管理工具,它可以让开发者轻松共享和重用代码。Weex 很多依赖来自社区,同样,Weex 也将很多工具发布到社区方便开发者使用。

类和对象的定义和调用演示(C++)

我习惯把类的定义放在头文件中 Student.h #define _CRT_SECURE_NO_WARNINGS#include <string>using namespace std;class student{public:char m_name[25];int m_age;int m_score;char* get_name(){return m_name;}int set_name

react笔记 8-19 事件对象、获取dom元素、双向绑定

1、事件对象event 通过事件的event对象获取它的dom元素 run=(event)=>{event.target.style="background:yellowgreen" //event的父级为他本身event.target.getAttribute("aid") //这样便获取到了它的自定义属性aid}render() {return (<div><h2>{