首页 > 其他分享 >jsp 九大内置对象和四大域对象

jsp 九大内置对象和四大域对象

时间:2022-10-29 15:33:15浏览次数:65  
标签:内置 对象 context2 context1 request jsp 页面


jsp 九大内置对象

我们打开翻译后的 java 文件。查看_jspService 方法。

jsp 九大内置对象和四大域对象_作用域

 

request 对象 请求对象,可以获取请求信息

response 对象 响应对象。可以设置响应信息

pageContext 对象 当前页面上下文对象。可以在当前上下文保存属性信息

session 对象 会话对象。可以获取会话信息。

exception 对象 异常对象只有在 jsp 页面的 page 指令中设置 isErrorPage="true" 的时候才会存在

application 对象 ServletContext 对象实例,可以获取整个工程的一些信息。

config 对象 ServletConfig 对象实例,可以获取 Servlet 的配置信息

out 对象 输出流。

page 对象 表示当前 Servlet 对象实例(无用,用它不如使用 this 对象)。

九大内置对象,都是我们可以在【代码脚本】中或【表达式脚本】中直接使用的对 象。

jsp 四大域对象 

四大域对象经常用来保存数据信息。

pageContext 可以保存数据在同一个 jsp 页面中使用

request 可以保存数据在同一个 request 对象中使用。经常用于在转发的时候传递数据

session 可以保存在一个会话中使用

application(ServletContext) 就是 ServletContext 对象

四个作用域的测试代码:

新建两个 jsp 页面。分别取名叫:context1.jsp,context2.jsp

1)context1.jsp 的页面代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

这是 context1 页面<br/>

<%

//设置 page 域的数据

pageContext.setAttribute("key", "pageContext-value");

//设置 request 域的数据

request.setAttribute("key", "request-value");

//设置 session 域的数据

session.setAttribute("key", "session-value");

//设置 application 域的数据

application.setAttribute("key", "application-value");

%>

<%-- 测试当前页面作用域 --%>

<%=pageContext.getAttribute("key") %><br/>

<%=request.getAttribute("key") %><br/>

<%=session.getAttribute("key") %><br/>

<%=application.getAttribute("key") %><br/>

<%

// 测试 request 作用域

// request.getRequestDispatcher("/context2.jsp").forward(request, response);


%>

</body>
</html>

2)context2.jsp 的页面代码如下:  

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

这是 context2 页面 <br/>

<%=pageContext.getAttribute("key") %><br/>

<%=request.getAttribute("key") %><br/>

<%=session.getAttribute("key") %><br/>

<%=application.getAttribute("key") %><br/>
</body>
</html>

测试 pageContext 作用域步骤:

直接访问 context1.jsp 文件

测试 request 作用域步骤:

1.在 context1.jsp 文件中添加转发到 context2.jsp(有数据)

2.直接访问 context2.jsp 文件 (没有数据)

测试 session 作用域步骤:

1.访问完 context1.jsp 文件

2.关闭浏览器。但是要保持服务器一直开着

3.打开浏览器,直接访问 context2.jsp 文件

测试 application 作用域步骤:

1.访问完 context1.jsp 文件,然后关闭浏览器

2.停止服务器。再启动服务器。

3.打开浏览器访问 context2.jsp 文件

 

标签:内置,对象,context2,context1,request,jsp,页面
From: https://blog.51cto.com/u_15786786/5806147

相关文章

  • jsp 的语法(重点掌握)
    jsp文件头部声明介绍(page指令介绍)<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%> 这是jsp文件的头声明。表示这是jsp页......
  • jsp 的运行原理
    jsp的本质,其实是一个Servlet程序。首先我们去找到我们Tomcat的目录下的work\Catalina\localhost目录。当我们发布day09工程。并启动Tomcat服务器后。我们发现在......
  • jsp 技术
    为什么要学习jsp技术什么是jsp?JSP(全称JavaServerPages)是由Sun公司专门为了解决动态生成HTML文档的技术。 Servlet程序输出html页面。在学习jsp技术之前,如......
  • 2022-下-面向对象-期中考试
    7-1点与线(类设计)分数20  作者段喜龙  单位南昌航空大学设计一个类表示平面直角坐标系上的点Point,私有属性分别为横坐标x与纵坐标y,数据类型均为实型数,......
  • Spring Boot系列之修改内置Tomcat版本
    背景在springboot出来之前,或者没有使用springboot时,JavaEE开发时如果选择tomcatservlet,需要自己指定tomcat版本;此处没有考虑那种直接把打包的war直接扔到本地......
  • 面向对象程序设计期中心得
    题目集7-17-1点与线(类设计)分数20作者 段喜龙单位 南昌航空大学设计一个类表示平面直角坐标系上的点Point,私有属性分别为横坐标x与纵坐标y,数据......
  • 【JS】面向对象-继承-私有和受保护的属性和方法
    在面向对象的编程中,属性和方法分为两组:内部接口——可以通过该类的其他方法访问,但不能从外部访问的方法和属性。外部接口——也可以从类的外部访问的方法和......
  • unity 使用动画器覆盖控制器(AnimatorOverrideController)快速创建新对象的动画控制器
    注释:假设你已经创建好了一个怪物对象的基础动画控制,此时需要在添加一个全新的敌人,你又懒得从新写一堆参数和代码,那么就可以使用这种重写控制器来快速生成控制器参数则使......
  • String基础: String两种创建对象方式的比较
    字符串常量在一般的语言中常量一旦声明则不可改变,在java中的字符串常量是以匿名对象来表示的javaz中字符串两种定义方法:StringstrA=newString("hello");(符合习惯......
  • 对象属性的遍历
    遍历对象属性:1.用for...in...遍历letperson={name:'henry',age:18,}for(letkeyinperson){console.log('键名:'+key+';键值:'+person[key]);}2......