jsp内置对象
1. jsp内置对象
在JSP中,为了实现很多网页中的特定功能,系统内部已经为我们内置了很多已经声明好的对象,称为内置对象,这些内置对象在JSP页面初始化时生成。
在所有的Jsp页面中都可以直接使用这些内置对象,具体使用时必须放入脚本元素中。
JSP内置对象简介JSP内置对象分类如下:
输入和输出对象:用于完成请求参数的接收处理和返回响应,包含有request、 response、out三个对象。
作用域通信对象:用于在web项目中存储和访问数据,包含有;pageContext、 session、application三个对象。
Servlet对象:用于配置和读取jsp页面的一些参数,包含广page, config两个对象。
错误对象:用于在jsp页面中获取一些错误信息,包含方exception一个对象。
JSP表单处理一request对象﹔
request对象用来包含客户端提交的各种信息。主要的一个作用就用来封装用户提交的表单信息,然后来获取用户提交的表单信息。
该对象中封装的请求信息主要包括以下3个部分:
(l)请求的 HTTP协议的传送文件头信息
(2)提交请求的客户端和服务器端信息
( 3)用户提交的表单信息
二 输入和输出对象
输入和输出对象—out对象:
out对象主要用于向客户端输出各种数据类型的内容,并且管理应用服务器上的输出缓冲区,缓冲区默认值通常是8KB,可以通过页面指令page来改变默认值。
out对象被封装为:javax.servlet.jsp. JspWriter类,在广用中out对象会通过JSP容器变换为java . io.PrintWriter类,
response对象叫响应对象,用于响应客户请求,向客户端输入它封装了JSP产生的响应,并发送到客户端以响应客户端的请求的数据可以是各种数据类型,甚至是文件。
out对象常用的方法有:
l、print向客户端浏览器输出内容
2、fLush刷新缓冲区
3、close关闭输出流
输入输出内置对象∶
1、out输出对象∶用于在脚本中向网页输出内容
2. response响应对象∶用于响应客户请求,向客户端输出信息,或者让客户端进行界面跳转。
客户端在进行请求时会发送许多额外的信息,这些就是头信息。服务器端也可以根据需要向客户端设置头信息,在所有头信息的设置中,定时刷新页面的头信息使用的最多,直接使用setHeader()方法,将头信息名称设置为refresh,同时指定刷新的时间。
三 作用域通信对象
作用域通信对象:
作用域通信对象主要用于在Jsp项目中,当需要跨越多个页面进行数据存储和取出时使用。可以将数据存储到其中一个作用域,然后在其他界面取出使用,但不同的作用域对象存储的范围截然不同。
作用域通信对象
常用的作用域通信对象有三个:
l.存储范围最小的pageContext对象,存入它里面的数据,只能在同一个jsp页面才能取出使用。
2.session对象,可以跨越很多页面存储和取出数据,但多个页面资源必须处于同一会话中,
3.application对象,存储的数据作用域最大,整个服务器内有效,只要Tomcat服务器不关闭,将一直存在,且所有的产共享该数据。
作用域通信对象的两个常用方法有两个:
存储数据方法: setAttribute("名字" ,数据)第一个参数为字符串是放入数据后临时取的名字,用于取出数据时使用。
取出数据方法:getAttribute("名字"),取出时的参数是存入时入的名字。另外取出数据时一定要注意的是,取出数据时会变为一种类型,需要进行强制转换一下。
作用域通信对象:
1、session :
同一个会话内的多个页面之间有效,不同用户
拥有不同的session对象
2. application :服务器范围内一直有效,所有用户共享
application对象
3、pageContext :当前页面有效
存入:作用域对象名.setAttribute("名字",数据);
取出: Object变量名=作用域对象名.getAttribute
("名字");
session对象:可以在应用程序的Web页面间进行跳转时,保存用户状态,使整个用户会话一直存在下去,直到关闭浏览器。
application对象:用于保存应用系统中的公有数据,服务器启懂时且自动创建application对象,只要没有关闭服务器,application一直存在,所有用户可以共享。
pageContext对象:可以获取JSP页面的request、sessiopplication等对象,并提供方法用于访问内建对象在页面药性,从而保持同一页面组件之间的
四 其他内置对象
exception对象:
exception对象用来处理JSP文件执行时发生的所有错误和异常,只有在page指令中设置isErrorPage属性值为true的页面中才可以被使片在一般的JSP页面中使用该对象将无法编译JSP文件。