jsp内置对象

来源:互联网 发布:一句话 晚安 知乎 编辑:程序博客网 时间:2024/06/07 07:21

Jsp中九大内置对象,其中必须掌握常用的5个对象:out,request,response,session,application 在Jsp中,默认已经创建了该对象,所以,在页面上可以直接使用,不需要再去创建对象。


Out对象

Jsp内置对象之一,直接使用,实现数据的输出显示。常用的方法是:print ()    println();   System.out.println();

Request对象
Request对象叫请求。请求中封装了客户端所有的信息(cookies,session,表单数据、浏览器信息)

页面转发,注意,转发页面的地址栏不会改,因为针对于客户端来说,只有一次请求。                request.getRequestDispatcher("index.jsp").forward(request, response);
存储数据:采用键值对我形式进行存储
request.setAttribute("name", userName);
         通过键来取数据。
request.getAttribute("name");

Response对象
Response 对象叫响应,服务器端向客户端的请求作出响应。
常用方法:
     response.sendRedirect("index.jsp");   //页面的重定向,跳转到首页去。注意,地址栏会改变。因为针对于客户端来说,一共发生了两次请求。
设置服务器端响应的字符编码:response.setCharacterEncoding(“utf-8”);

Session对象
Session对象叫会话:每一个浏览器访问网站,服务就会给这个请求创建一个会话。存储过服务器端,服务器根据每一个会话的ID来区分每一个请求的用户。
常用方法:

Session过期时间的设置有3种方式
1. 在Tomcat服务器的Web.xml文件中进行设置,Tomcat设置的时间是30分钟


2. 在项目的Web.xml 文件中进行设置,一般情况下我们设置20分钟。

3. 在代码中设置,通过setMaxInactiveInterval()这个方法来进行设置。
Session的销毁:
   1. 时间过期,自动销毁。
   2. 调用invalidate();这个方法来销毁Session.

Session中存储的数据可以是任意类型。存储位置在服务器端,安全性比较高。
在同一台电脑中,不同的浏览器也认为是不同的用户,也会分配一个SesionID。
Session 会随着浏览器关闭也失效。但请注意,Session还会保留在服务端,一直要到设定的时间,才真正的销毁。

Application对象:
整个应用程序只有一个,所有的用户都可以访问到,安全性较高。随应用程序启动就产生了,一直保存在服务器端,要到应用程序关闭,才销毁。
通常用于存储一些所有用户都需要的数据。
方法如下:


其它内置对象:
Page:实现处理本页面当前请求的类的实例
pageContext:本JSP页面的上下文
Config:本JSP的ServletConfig
Exception:表示JSP页面运行时产生的错误

cookie:
每一个访问用户也会有一个Cookie存储,类似于Session,存储的位置在客户端,存储的类型只能是String,也可以设置过期时间。因为是存储在客户端,所以相对于Session、Application这些对象存储的形式来说安全性不高。为了安全性,公共网络通常禁用了Cookie。
通常用于记录访问足迹,以及登录时把用户信息保留一段时间,以便实现一个自动登录功能。
保存Cookie需要用response对象。
获取Cookie则要用request对象。
创建Cookie对象:

作用域:
Page:本页面,每一个页面有一个Page对象,只在本页面有效,转跳到其它的页面则无效。
Request:一个请求,每一次与服务器的交互都是一次新的请求。
Session:只在SessionID有效,则随时可以访问。与请求无关。
Application : 所有人都可以访问。
Page -> Request -> Session -> Application

总结:
Out   request   response   session   application  
Page  pageContext  config  exception

Cookie不属于内置对象 ,数据以字符串的方式存储在客户端,安全性低。
Session 可以存任意对象,存储在服务器端,安全性高,在有效期内到处能访问。
Application也可以存任意对象,也是存储在服务器端,安全性高。

0 0
原创粉丝点击