JSP共有9种内置对象:request、response、session、application、page、out、config、exception、pageContext
1、request
适合处理客户端提交的信息、获取请求的参数的值、获取cookie数据。
解决request产生的中文乱码,第一个是请求参数的值中文时,通过request获取的中文参数值为乱码,这是因为请求参数采用的是iso-8859-1编码不支持中文。解决示例代码:
String user = new String(request.getParameter("user").getBytes("iso-8859-1"),"utf-8");
第二个是获取表单提取的信息,通过request获取中文参数值为乱码,解决方法在提取表单信息的JSP页面中通过page指令的下方加上调用request对象的setCharacterEncoding()方法将编码设置为utf-8或者GBK。解决示例代码:
<% request.setCharacterEncoding("utf-8");%>
2、response
适合处理的操作HTTP头信息、设置MIME类型、实现页面重定向。
response对象提供sendRedirect()方法将网页重新定向到另一个页面,其语法格式如下:
response.sendRedirect(String path);
3、out
out对象主要是实现向客户端即浏览器输出信息,其实现方法有print()(不换行)和println()(换行),要想在浏览器实现换行,需要在使用输出方法之前使用HTML语言的<pre>标记,示例代码如下:
<pre>
<%
out.println("明日科技");
out.println("编程字典");
%>
</pre>
4、session
session作用于同一浏览器的一个用户,共享同一个用户的所有页面。session可以用来保存或者读取客户相关信息,通过setAttribute()和getAttribute()方法实现。session对于需要移除的对象,通过removeAttribute()方法进行移除。销毁session对象,则需要invalidate()方法销毁session。
5、application
application对象用于保存所有应用程序中的公有数据。此对象保存和读取数据的方法同session方法类似,同时application对象提供访问应用程序初始化参数的方法,该参数在web.xml文件中设置。在web.xml文件中,通过<conttext-param>标记配置应用程序初始化参数。示例代码:
<context-param>
<param-name>home</param-name>
<param-value>http://www.mrbccd.com</param-value>
</context-param>
application对象提供了两种访问应用程序初始化参数的方法,第一种是getInitParameter()方法,语法格式如下:application.getInitParameter(String name); //该方法返回一个已命名的参数值 ;第二种是getAttributeNames()方法,语法格式如下:application.getAttributeNames(); //该方法返回所有已定义的应用程序初始化参数名的枚举。
6、page
7、pageContext
8、config
config对象主要是用于取得服务器的配置信息,通过pageContext对象的getServletConfig()方法可以获得一个config对象。config对象常用的方法如下:
getServletContext() | 获取Servlet上下文 |
getServletName() | 获取Servlet服务器名 |
getInitParameterNames() | 获取服务器所有初始参数名称,返回值为枚举类型 |
getInitParameter() | 获取服务器中name参数的初始值 |
9、exception
exception对象用来处理JSP文件执行时发生的所有错误和异常,只有在page指令中设置isErrorPage属性值为true时,此对象才可以被使用。主要方法有:getMessage() //返回exception对象的异常信息字符串;