2019-06-13

九大内置对象

[if !supportLists]1、        [endif]request对象

request 对象是 javax.servlet.httpServletRequest 类型的对象。该对

象代表了客户端的请求信息,主要用于接受通过 HTTP 协议传送到服务器的数据。

(包括头信息. 系统信息. 请求方式以及请求参数等)。request 对象的作用域为一次请求

[if !supportLists]2、        [endif]response对象

response 代表的是对客户端的响应,主要是将 JSP 容器处理过的对象传回

到客户端。response 对象也具有作用域,它只在 JSP 页面内有效。

[if !supportLists]3、        [endif]session对象

session 对象是由服务器自动创建的与用户请求相关的对象。服务器为每个用户都生成一个 session 对象,用于保存该用户的信息,跟踪用户的操作状态。

session 对象内部使用 Map 类来保存数据,因此保存数据的格式为

“Key/value”。 session 对象的 value 可以是复杂的对象类型,而不仅仅局限于字符串类型。

[if !supportLists]4、        [endif]application对象

application 对象可将信息保存在服务器中,直到服务器关闭,否则

application 对象中保存的信息会在整个应用中都有效。

与 session 对象相比,application 对象生命周期更长,类似于系统的“全局变量”

[if !supportLists]5、        [endif]out对象

out 对象用于在 Web 浏览器内输出信息,并且管理应用服务器上的输出缓

冲区。在使用 out 对象输出数据时,可以对数据缓冲区进行操作,及时清除缓冲区中的残余数据,为其他的输出让出缓冲空间。待数据输出完毕后,要及时关闭输出流。

[if !supportLists]6、        [endif]pageContext对象

pageContext 对象的作用是取得任何范围的参数,通过它可以获取 JSP

页面的 out. request.

reponse. session. application 等对象。

pageContext 对象的创建和初始化都是由容器来完成的,在 JSP 页面中可

以直接使用 pageContext 对象。

[if !supportLists]7、        [endif]config对象

config 对象的主要作用是取得服务器的配置信息。通过 pageConext 对象

的getServletConfig() 方法可以获取一个 config 对象。

当一个 Servlet 初始化时,容器把某些信息通过 config 对象传递给这个

Servlet。

开发者可以在web.xml 文件中为应用程序环境中的Servlet程序和JSP页

面提供初始化参数。

[if !supportLists]8、        [endif]page对象

page 对象代表 JSP 本身,只有在 JSP 页面内才是合法的。 page 隐含对

象本质上包含当前 Servlet 接口引用的变量,类似于 Java 编程中的 this 指针。

[if !supportLists]9、        [endif]exception对象

exception 对象的作用是显示异常信息,只有在包含 isErrorPage="true"

的页面中才可以被使用,在一般的JSP 页面中使用该对象将无法编译 JSP 文件。

excepation 对象和 Java 的所有对象一样,都具有系统提供的继承结构。

exception 对象几乎定义了所有异常情况。

如果在 JSP 页面中出现没有捕获到的异常,就会生成 exception 对象,并

把 exception 对象传送到在 page 指令中设定的错误页面中,然后在错误页面中处理相应的 exception 对象。



EL表达式

EL(Expression

Language)是为了使 JSP 写起来更加简单。表达式语言的

灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式

的方法,让 Jsp 的代码更加简化。

语法结构非常简单: ${expressio}

EL 表达式一般操作的都是域对象中的数据,操作不了局部变量。域对象的

概念在 JSP 中一共有四个:pageContext, request, session,

application;范围依次

是,本页面,一次请求,一次会话,整个应用程序。而 EL 默认的查找方式为

从小到大查找,找到即可。当域对象全 找完了还未找到则返回空字符串””。

当需要指定从某个特定的域对象中查找数据时可以使用四个域对象对应的

空间对象,分别是:pageScope,

requestScope, sessionScope, applicationScope。



EL运算

使用 EL 表达式可以用来判断集合中是否有元素 ${empty list}

List遍历

<%

List<String> list = new

ArrayList<String>();

list.add("aaa");

list.add("bbb");

list.add("ccc");

request.setAttribute("list",

list);

%>

${empty list}

<br /> ${list[1] }

<br />

  访问 map

这里使用到了 el 的另一种取值方式[“”]

<%

Map map = new HashMap();

map.put("aaa", "111");

map.put("bbb", 2222);

map.put("ccc-a", 333);

request.setAttribute("map", map);

%>

${empty map} ${map.aaa }

<br /> ${map["bbb"]}

<br /> ${map["ccc-a"]}


  做+ 、- 、* 、/( 也可以使用div  来表示) 、% 、==

注意:String 也使用==比较


page 范围

page 范围是通过 pageContext 对象设置的,之前研究过的 page 属性范围中使用的是

pageContext 进行属性设置的,但是从 javax.servlet.jsp.PageContext 类中可以发现,有以下的

一种设置属性的方法:

public void setAttribute(String name, Object

value, int scope)

在 PageContext 类中存在四个表示属性范围的常量,可以直接通过这些常量指定 scope:

pageContext.PAGE_SCOPE

pageContext.REQUEST_SCOPE

pageContext.SESSION_SCOPE

pageContext.APPLICATION_SCOPE

在其它页面取值时,需要指定对应的作用域,或者通过 EL 表达式

<%=pageContext.getAttribute("a",pageContext.SESSION_SCOPE)

%>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.学习内容 JSP技术入门和常用指令 JSP的内置对象&标签介绍 EL表达式&EL的内置对象 2.JSP技术入门...
    WendyVIV阅读 6,511评论 1 18
  • JSP总结(经典) day1 JSP 定义: 1)Java Server Page, Java EE 组件,本...
    91数据阅读 8,827评论 0 13
  • 一、jsp介绍 jsp作用jsp全称java server pages(java服务器页面),本质是一个servl...
    圣贤与无赖阅读 5,010评论 0 14
  • JSP Jsp(java server page ) 的 动态网页编程技术,是服务器的动态资源; 长期的软件实践中...
    1fa38a6a3bcf阅读 1,670评论 0 0
  • 对于java中的思考的方向,1必须要看前端的页面,对于前端的页面基本的逻辑,如果能理解最好,不理解也要知道几点。 ...
    神尤鲁道夫阅读 4,235评论 0 0