Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >pageContext和局部变量的区别?

pageContext和局部变量的区别?

作者头像
马克java社区
修改于 2021-07-12 01:46:19
修改于 2021-07-12 01:46:19
3580
举报
文章被收录于专栏:java大数据java大数据

4) pageContext: 保存的键值仅在本个页面有效。在未来学习Taglib过程当中,将发挥巨大作用。类变量被所有用户(浏览器)只在这一页时共享(例如例1.1),而pageContext 被某个用户(浏览器)只在这一页时才有。pageContext范围比类变量小,和局部变量是一样的,但局部变量可以在非service的方法中用,而 pageContext只能在service方法中用。 见例子2.4

5)局部变量:转化成servlet后的某个方法中的局部变量。

6)类变量:转化成servlet后的类变量。

例 2.3

<%@ page contentType="text/html; charset=GBK" %>

<html>

<body>

<%

request.setAttribute("rName","rmark-to-win");

application.setAttribute("aName","amark-to-win");

session.setAttribute("sName","smark-to-win");

request.getRequestDispatcher("/Cookie/AddCookie").forward(request,response);

/*如用下面的response,request就取不出来了。 结果就变成如下了 null amark-to-win smark-to-win*/

// response.sendRedirect("http://localhost:8080/ServletHello/Cookie/AddCookie");

%>

</body>

</html>

package com;

import java.io.IOException;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class AddCookie extends HttpServlet {

protected void doGet(HttpServletRequest request,

HttpServletResponse response) throws ServletException, IOException {

String rav=(String)request.getAttribute("rName");

String scs=(String)this.getServletContext().getAttribute("aName");

String sa=(String)request.getSession().getAttribute("sName");

System.out.println(rav+" "+scs+" "+sa);

}

}

比较pageContext,类变量和局部变量,下面给出一个例子。

例 2.4

<%@ page contentType="text/html; charset=GBK"%>

<html>

<body bgcolor="#ffffff">

<%!double called() {

int c=9;//局部变量可以放在service外的方法里。

/*下一句错误,因为pageContext只能放在service里面,外面can not be resolved.*/

// pageContext.getAttribute("abc");

return Math.random();

}%>

<%!int a = 3;%>

<%

int b=4;

if (pageContext.getAttribute("abc") != null) {

pageContext.setAttribute("abc", "xyz1");

} else {

pageContext.setAttribute("abc", "xyz");

}

%>

<%

if(b==4) System.out.println(b+" is still 4");

b++;

System.out.println(a++);

/*you can not write System.out.println(abc); it will report error by drawing the red line*/

System.out.println(pageContext.getAttribute("abc"));

%>

<h1>JBuilder Generated JSP</h1>

</body>

</html>

更多请看:https://blog.csdn.net/qq_44594371/article/details/103167781

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
ServletRequest.getRequestDispatcher和ServletContext.getRequestDispatcher的区别。
马克-to-win: javax.servlet.RequestDispatcher是Sun公司编写的一个Interface,顾名思义,它可以把用户请求"a资源"的request派遣(dispatch)到"b资源"上,从而实现跳转。(本来人家要访问'a资源",你的程序却让人家自动的跳转到"b资源"上。) 注意:RequestDispatcher有两种形式:这两种形式都能达到跳转的目的。一种是ServletRequest.getRequestDispatcher(String url)。一种是ServletContext.getRequestDispatcher(String url)。但正常来讲,二者都只能访问同一web应用的资源。见下面理论论述和实验。
马克java社区
2021/07/08
4580
有关Session和servletContext长期占用服务器内存的解决方案
马克-to-win:有关Session和servletContext长期占用服务器内存的解决方案就是:对于确定不再需要的数据,一定要及时释放所占 资源,比如:context.removeAttribute("mysqlds");否则的话,严重的情况可能造成内存泄露。(请参见我Java部分第 三章内存泄漏部分知识。)
马克java社区
2021/07/09
3.5K0
JSP第二篇【内置对象的介绍、4种属性范围、应用场景】
什么是JSP内置对象 JSP引擎在调用JSP对应的jspServlet时,会传递或创建9个与web开发相关的对象供jspServlet使用。JSP技术的设计者为便于开发人员在编写JSP页面时获得这些web对象的引用,特意定义了9个相应的变量,开发人员在JSP页面中通过这些变量就可以快速获得这9大对象的引用 细心的朋友会发现,我们没有在JSP页面上定义过out对象,却可以直接使用!其实out对象就是JSP内置对象之一。 九个内置对象: pageContext page config request respo
Java3y
2018/03/15
9420
JSP第二篇【内置对象的介绍、4种属性范围、应用场景】
JavaWeb后端入门9—JSP、MVC
作用:代码复现,可以单独写header.jsp、footer.jsp,写其他页面时直接引入
用户6948990
2025/04/03
980
JavaWeb后端入门9—JSP、MVC
JSP面试题都在这里
下面是我整理下来的JSP知识点: 图上的知识点都可以在我其他的文章内找到相应内容。 JSP常见面试题 jsp静态包含和动态包含的区别 jsp静态包含和动态包含的区别 在讲解request对象的时候,我
Java3y
2018/03/15
1.4K0
JSP面试题都在这里
Java EE基础之JSP(三)
Single
2018/01/04
1.2K0
Java EE基础之JSP(三)
JSP 学习笔记
JSP 全名为Java Server Pages,中文名叫java 服务器页面,它是在传统的 HTML 页面中插入 JAVA 代码片段和 JSP 标签形成的文件。 上一篇 Servlet 中只是讲解了我们开发中为什么继承 HttpServlet,而不是 Servlet 和 GenericServlet。并且只是对 ServletConfig、ServletContext、ServletResponse、ServletRequest 四个对象所拥有的方法简单的进行了介绍,这篇文章将会接着上一篇文章进行更加详细
bgZyy
2018/05/16
9660
JavaWeb后端入门8—EL表达式
EL(Expression Language)目的:为了使JSP写起来更加简单。表达式语言的灵感来自于ECMAScript 和XPath表达式语言,它提供了在JSP中简化表达式的方法,让Jsp的代码更加简化。
用户6948990
2025/04/03
830
JSP开发基础入门学习1
Tomcat 最后会将 jsp 文件编译后的(.class-字节码文件/.java-类)存放在目录/work/Catalina/localhost/项目名/org/apache/jsp 里面:
全栈工程师修炼指南
2020/10/23
1.3K0
JSP开发基础入门学习1
JSP基础--九大内置对象
Object findAttribute(String name):依次在page、request、session、application范围查找名称为name的数据,如果找到就停止查找。这说明在这个范围内有相同名称的数据,那么page范围的优先级最高!
eadela
2019/09/29
5110
27. JSP
因为 Servlet 程序回传 html 页面数据是一件非常繁锁的事情。开发成本和维护成本都极高。
Devops海洋的渔夫
2021/11/19
7680
27. JSP
Servlet终极保姆级入门指南
简单来说:Servlet 是运行在 Web服务器(如Tomcat服务器)的,使用 Java编写的小应用程序。
上分如喝水
2021/08/16
8750
Servlet终极保姆级入门指南
Web阶段:第十二章:JSP动态页面
作者:java_wxid **1.什么是Jsp?** jsp是java server page,java的服务器页面。 2.为什么要学习jsp技术 因为jsp技术可以很好的解决在Servlet程序中回
Java廖志伟
2022/09/28
7990
Web阶段:第十二章:JSP动态页面
javaWeb核心技术第九篇之JSP
JSP:全名是Java Server Pages,它是建立在Servlet规范之上的动态网页开发技术.在JSP文件中,HTML代码与Java代码共同存在,其中,HTML代码用来实现网页中静态内容的显示,Java代码用来实现网页中动态 内容的显示.JSP文件的扩展名为.JSP; JSP技术所开发的Web应用程序是基于Java的,它可以用一种简捷而快速的方法从Java程序生成Web页面,使用上具有如下特征: 1:跨平台:由于JSP是基于Java语音的,它可以使用JavaAPI,所有它也是跨平台的,可以应用
海仔
2019/08/26
6980
Web-第十一天 JSP学习
JSP全名是Java Server Pages,它是建立在Servlet规范之上的动态网页开发技术。在JSP文件中,HTML代码与Java代码共同存在,其中,HTML代码用来实现网页中静态内容的显示,Java代码用来实现网页中动态内容的显示。为了与传统HTML有所区别,JSP文件的扩展名为.jsp。
Java帮帮
2018/07/27
8860
Web-第十一天 JSP学习
JSP笔记
jsp的全称是 java server pages。Java的服务器页面。 jsp的主要作用是代替 Servlet 程序回传 html 页面的数据。 因为 Servlet 程序回传 html 页面数据是一件非常繁琐的事情、开发成本和维护成本都极高。
技术交流
2022/11/18
1.6K0
JSP笔记
JavaWeb(七)Cookie,EL表达式,标准标签库
Cookie Cookie概述 Cookie译为小型文本文件或小甜饼,Web应用程序利用Cookie在客户端缓存服务器端文件。Cookie是以键值对形式存储在客户端主机硬盘中,由服务器端发送给客户端,客户端再下一次访问服务器端时,服务器端可以获取到客户端Cookie缓存文件。 Cookie是由服务器端创建的,然后由服务器端发送给客户端,客户端以键值对形式存储Cookie,并标注Cookie的来源。客户端再次访问服务器端时,存储的Cookie会保存在请求协议中,服务器端可以获取上次存储的缓存文件内容。 Coo
二十三年蝉
2018/02/28
1.1K0
JavaWeb(七)Cookie,EL表达式,标准标签库
Servlet基础入门学习2
所以为了解决上面这些问题,采用了下面所学的Session方法进行记录用户Client的身份;
全栈工程师修炼指南
2022/09/29
6100
Servlet基础入门学习2
JSP 内置对象(一)
原理,在第一次访问的时候,给客户端设置cokkie,然后再次访问的时候,会带上cokkie中的jsessionid,用来判断是否为新用户
mySoul
2019/03/15
1K0
JSP基础知识总结
JSP(全称 Java Server Pages)是由 Sun 公司专门为了解决动态生成 HTML 文档的技术。
愷龍
2022/08/27
6030
JSP基础知识总结
相关推荐
ServletRequest.getRequestDispatcher和ServletContext.getRequestDispatcher的区别。
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档