JSP语法之八大隐式对象

    JSP是具有HTTP请求能力的web页面,而JSP内置对象建立在JSP功能上的抽象,抽象是对事务共性的封装,任何一个JSP页面中都包含有输出、请求、回应、上下文以及异常处理等。

JSP提供8种内置对象:

request:封装了客户端提交的HTTP请求,适用与处理客户端提交的信息。

response:用于响应客户端信息。

session:适用于在同一应用程序中,每个客户端的各个页面中共享数据。

application:用于在同一应用程序中,各个用户共享数据。

out:用于向客户单属性各种类型的数据。

page用于操作jsp页面自身。

config:用于读取服务器配置信息。

exception用于操作JSP文件时发生的异常。

-------------------------------------------------------------------------------------------------------

1.out应用:

a、向客户端输出数据:提供了print()和println()方法。

   如out.print("abc")/out.println("abc")。

b、管理缓冲区:主要是清理、刷新缓冲区和获取缓冲区大小。

   方法有:clear()、clearBuffer()、flush()、getBufferSize()。


2.request应用

a、获取请求参数:以超链接的形式发送请求时,可在其后加上问号来实现。如<a href="***? id=1">,对于id可通过request对象中的getParameter()方法实现。

b、解决中文乱码

1.获取访问请求参数的乱码:

可通过String user= new

String(request.getParameter("user").getBytes("ISO-8859-1"),"UTF-8")解决。

2.获取表单参数乱码

可通过request.setCharacterEncoding("UTF-8");并且前面没有任何的调用request()方法。

3.获取客户单数据

通过request对象可获取客户端相关信息。如HTTP报头,客户端提交方式,主机地址,端口号等。

主要方法:getHeader()、etHeadersName()、getMethod()、getProtocol()、etRemostHost()、etCookies()等。


4.response应用

a、HTTP头信息操作:设置响应类型,禁用缓存、设置页面自动刷新和定时跳转页面

1.禁用缓存:response.setHeader("Cache-control","no-store")

              response.setDateHeader("Expires",0);

2.设置页面自动刷新: response.setHeader("refresh","10")   

3.定时跳转:response.setHeader("refresh","2;URL=login.jsp")

b、设置MIME类型

通过response.setContentType(Stringtype);让网页内容以不同的形式输出到浏览器中。

c、页面重定向:

    使用response对象提供的sendRedirect()方法可将网页重定向到另一个页面。进行重定向后,request中的属性全部失效,并开始一个新的request对象。

如:response.sendRedirect(String path)


5.session应用

a、session生命周期:

b、会话的创建与获取:session对象可存储或读取客户相关的信息。可通过session对象中的setAttribute()和getAttribute()方法实现。

1、session.setAttribute(String name,Object obj);

   session.getAttribute(String name);

注意:getAttribute返回的是一个Object类型,则可通过强制类型转换或toString()方法实现。

c、移除session中数据:可通过session.removeAttribute(Stringname);实现;

d、设置session的有效时间。


6.application应用

是全局的。

a、生命周期

b、数据操作:

可通过application对象中的方法存储、读取或移除应用环境的属性。

setAttribute():用于保存环境属性;

getAttributeName():用于获取所有application对象使用的属性名;

getAttribute():获取属性值;

removeAttribute():从application对象中移除指定名称的属性。


7.获取web.xml中config对象

config对象主要用于取得服务器配置信息,可有pageContext中的getServletConfig()实现。

常用方法:

getInitParameter():获取初始化参数;

getServletName():获取Servlet服务器名;      

getServletContext()获取Servlet上下文。


8.获取异常信息

exception对象主要用于处理JSP文件执行时发生的错误和异常,主要方法:

getMessage():返回异常信息字符串;

getLocalizedmessage()返回本地化错误。


你可能感兴趣的:(JSP语法之八大隐式对象)