JSP的内置对象是指在JSP页面系统中已经默认内置的Java对象,这些对象不需要开发人员显式声明即可使用。在JSP页面中,可以通过存取JSP内置对象实现与JSP页面和Servlet环境的相互访问。每个内部对象均有对应所属的ServletAPI类型。 JSP内置对象是基于JSP函数的抽象,任何的JSP页面都包含在输出,请求中,响应以及上下文和异常处理中。
1、out应用程序
(1)数据到客户端输出,提供print()方法和println()方法
例:
代码语言:javascript复制out.print("abc")
out.println("abc")
(2)缓冲区管理,主要是清理,刷新缓冲区和缓冲区大小
方法有:clear(),clearBuffer(),flush(),getBufferSize()
2、request应用程序
(1)获取请求参数:在请求中发送超链接的形式,并且在后面加一个?来实现
例:
代码语言:javascript复制<a href="***? id=1">
对于ID的值可以通过请求对象中的getParameter()方法
(2)中文乱码
当访问请求参数乱码时,可以通过以下的代码解决
代码语言:javascript复制String user= new String (request.getParameter ("user").GetBytes ("ISO-8859-1"), "UTF-8")
当访问表单参数乱码时,可以通过以下代码解决
代码语言:javascript复制request.setCharacterEncoding ("UTF-8");
3、访问客户数据
客户端通过请求对象获取可用的相关信息。如HTTP头,客户端模式,主机地址,端口号等。
方法:getHeader(),getMethod(),getProtocol(),getRemostHost(),getCookies()
4、response的应用
(1)HTTP头信息操作:设置响应类型,禁用缓存,设置页面自动跳转页面刷新和计时
禁用缓存:
代码语言:javascript复制response.setHeader("Cache-control","no-store")
response.setDateHeader("Expires",0);
自动刷新:
代码语言:javascript复制response.setHeader("refresh","10")
定时跳转:
代码语言:javascript复制response.setHeader("refresh","2;URL=login.jsp")
(2)设置MIME类型
通过以下代码让网页的内容以不同的形式输出到浏览器
代码语言:javascript复制response.setContentType (String type);
(3)页面重定向
使用sendRedirect()方法提供的响应对象将网页重定向到另一个页面。对于重定向,请求中的属性失败,并且新请求对象的开头
例:
代码语言:javascript复制response.sendRedirect(String path)
5、session的应用
(1)session生命周期
(2)创建并获取会话
会话对象可以存储或读取客户相关信息,通过setAttribute()和getAttribute()方法获取session对象
代码语言:javascript复制session.setAttribute(String name,Object obj);
session.getAttribute(String name);
注意:getAttribute返回一个Object类型,可以输入coercion或toString()方法
(3)删除会话
通过session.removeAttribute(String name); 方法实现
(4)有效时间内设置会话
6、application的应用
(1)生命周期
(2)数据操作
属性可以存储在应用程序对象中,读取或删除应用程序的方法
setAttribute(): 存储请求中的属性
getAttributeName():使用属性名称
getAttribute():获取属性值
removeAttribute():从指定应用程序对象名称
7、在web.xml中获取配置对象
config对象主要用于获取服务器配置信息,可以在pageContext中获取getServletConfig(Implementation)
常用方法:
getInitParameter():用于初始化参数
getServletName():访问Servlet服务器名称
getServletContext( )获取Servlet上下文
8、获取异常信息
异常对象主要用于处理JSP文件执行错误和异常,主要方法:
getMessage():返回一个异常信息字符串
getLocalizedmessage()返回本地化错误