【JAVA】JSP的内置对象(下)

  接着上篇博文,小编将继续介绍JSP的内置对象。

一、9大内置对象

这里写图片描述

二、详细用法

4.session

  session在网络应用中,称为“会话控制”。session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 session 对象中的变量将不会丢失。

4.1 创建及获取客户的会话

session.setAttribute(String name,Object obj);  //将信息保存在session范围内
session.getAttribute(String name);             //获取保存在session范围内的信息

4.2 从会话中移除指定的对象

session.removeAttribute(String name);  //指定销毁session中的某个属性

4.3 设置session的有效时间

  当用户访问网站时,会产生一个新的会话,用以记录用户的状态。如果一个会话中,客户端长时间不向服务器发出请求,这个会话将被自动销毁。这个时间可以通过session来设置,tomcat服务器默认为30分钟。

session.setMaxInactiveInterval(int time); //设置session的有效期,time的单位为秒

4.4 销毁session

  虽然当客户端长时间不向服务器发送请求后,session会自动消失,但是对于一些需要实时监测人数的需求,就需要我们来手动销毁session。

session.invalidate();  //清除当前session的所有相关信息

5.application

  application对象用于保存所有应用程序中的公有数据。在服务器启动时自动创建,在服务器停止时销毁。当application对象没有被销毁时,所有用户都可以共享该application对象,它类似于系统的“全局变量”。它常用于实现网页计数器或者聊天室。

5.1 访问应用程序初始化参数

  Application对象提供了访问应用程序初始化参数的方法,该参数在web.xml文件(位于Web应用所在目录下的WEB-INF子目录)中设置,在该文件中通过context-param标记配置应用程序初始化参数。

<context-param>
    <param-name>url</param-name>
    <param-value>jdbc:mysql://127.0.0.1:3306/db_database</param-value>
</context-param>

5.2 应用程序环境属性管理

application.setAttribute(String name,Object obj);  //保存应用程序环境属性
application.getAttributeName();             //获取所有application对象使用的属性名
application.getAttribute(String name);      //获取指定属性的属性值
application.removeAttribute(String name);   //去掉指定名称的属性

6.pageContext

  pageContext对象可以获取JSP页面的request、response、session、application、exception等对象。pageContext对象的创建和初始化都是由容器来完成的,JSP页面中可以直接使用pageContext对象。
  
  常用方法如下:

方法 说明
forward(java.lang.String relativeUtlpath) 把页面转发到另一个页面
getAttribute(String name) 获取参数值
getAttributeNamesInScope(int scope) 获取某范围的参数名称的集合,返回值为java.util.Enumeration对象
getException() 返回exception对象
getRequest() 返回request对象
getResponse() 返回response对象
getSession() 返回session对象
getOut() 返回out对象
getApplication() 返回application对象
setAttribute() 为指定范围内的属性设置属性值
removeAttribute() 删除指定范围内的指定属性

7.page

  page对象代表JSP本身,只在JSP页面内才是合法的。该对象本质上包含当前Servlet接口引用的变量,可以看做是this关键字的别名。
  
  常用方法如下: 

方法 说明
getClass() 返回当前Object的类
hashCode() 返回该Object的哈希代码
toString() 把该Object类转换为字符串
equals(Object o) 比较该对象和指定的对象是否相等

8.config

  Config对象主要用于获取服务器的配置信息。当一个Servle初始化t时,容器把某些信息通过config对象传递给Servlet。开发者可以在web.xml文件中为应用程序环境中的servlet程序和JSP页面提供初始化参数。
  
  常用方法如下:

方法 说明
getServletContext() 获取Servlet上下文
getServletName() 获取Servlet服务器名
getInitParameter() 获取服务器所有初始参数名称,返回值为java.util.Enumeration对象
getInitParameterNames() 获取服务器中name参数的初始值

9.exception

  exception对象用来处理JSP文件执行时发生的所有错误和异常,只有在page指令中设置isErrorPage属性值为true的页面才可以被使用。
  在JAVA程序中,可以用try…catch关键字来处理异常情况,如果在JSP页面出现没有捕捉到的异常,这会生成exception对象,并将其传送在page指令中设置的错误页面中,然后在错误页面中处理相应的exception对象。

  常用方法如下:

方法 说明
getMessage() 返回exception对象的异常信息字符串
getLocalizedmessage() 返回本地化的异常错误
toString() 返回关于异常错误的简单信息描述
fillInStackTrace() 重写异常错误的栈执行轨迹
  session cookie
保存位置 服务器端 客户端
保存内容 重要信息 其他信息
大小限制
安全性 低(信息完全可见;易于本地编辑)
生命周期 访问session的间隔时间(tomcat中的默认失效时间为30分钟) 会话cookie:和浏览器一致
持久化cookie:存储在客户端硬盘
访问范围 单个浏览器独享 多个浏览器共享
网络传输量 不会给客户端 会传递信息给服务器
缺点 session保存在服务器端一段时间才会消失,如果session过多会增加服务器的压力 有安全隐患

猜你喜欢

转载自blog.csdn.net/ljl55555/article/details/79824688
今日推荐