1.request对象
类型:Javax.servlet.http.HttpServletRequest
描述:来自客户端的请求经Servlet容器处理后,由request对象进行封装。注:客户端和服务器的一次通信就是一次请求(发送请求或得到相应)。
作用域:request。说明,这次请求结束后,它的生命周期 就结束了。
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>request内置对象</title>
</head>
<body>
<form action="show.jsp" method="post">
<ul style="list-style:none;line-height:30px">
<li>用户姓名:<input type="text" name="name" /><br /></li>
<li>用户密码:<input type="text" name="key" /></li>
<li><input type="submit" value="提交" /></li>
</ul>
</form>
</body>
</html>
2.response对象
类型:Javax.servlet.http. HttpServletResponse
描述:它封闭了JSP 的响应,然后被发送到客户端以响应客户的请求。
作用域:page
1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8"%>
3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
4 <html>
5 <head>
6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7 <title>Insert title here</title>
8 </head>
9 <body>
10 不好意思,登陆失败。
11 </body>
12 </html>
3.session对象
类型:Javax.servlet.http.HttpSession
描述:表示一个会话,用来保存用户信息,以便跟踪每个用户的状态。(不要用来保存业务数据,request)
定义:是指在一段时间内客户端和服务器之间的一连串的相关的交互过程。
作用域:session。
1 <%@ page language="java" contentType="text/html; charset=UTF-8"
2 pageEncoding="UTF-8"%>
3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
4 <html>
5 <head>
6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7 <title>Insert title here</title>
8 </head>
9 <body>
10 <form action="session.jsp" method="post">
11 username:<input type="text" name="user"/><br/>
12 password:<input type="password" name="pwd"/><br/>
13
14 <input type="submit" name="登陆"/>
15 </form>
16 </body>
17 </html>
4.out对象
out对象是JspWriter类的实例,是向客户端输出内容常用的对象
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>201819102003张纪燕</title>
</head>
<body>
<%
pageContext.setAttribute("name1", "hello") ;
pageContext.setAttribute("name2", "freedom",PageContext.SESSION_SCOPE) ;
%>
<%
String name1 = (String) pageContext.getAttribute("name1") ;
out.write(name1) ;
String name2 = (String) session.getAttribute("name2") ;
out.write(name2) ;
%>
</body>
5.page对象
page对象就是指向当前JSP页面本身,有点象类中的this指针,它是java.lang.Object类的实例
<%
String url = config.getInitParameter("url");
String str = config.toString();
out.print("page对象的initParameter方法:"+url+"</br>");
out.print("page对象的toString方法:"+str);
%>
6.application对象
application对象实现了用户间数据的共享,可存放全局变量。它开始于服务器的启动,直到服务器的关闭,在此期间,此对象将一直存在;这样在用户的前后连接或不同用户之间的连接中,可以对此对象的同一属性进行操作;在任何地方对此对象属性的操作,都将影响到其他用户对此的访问。服务器的启动和关闭决定了application对象的生命。它是ServletContext类的实例。
<%@ page import="java.util.*" %>
<% Enumeration<String> enume = application.getInitParameterNames(); //获取全部初始化参数
while(enume.hasMoreElements()) { String name = enume.nextElement();
String value = application.getInitParameter(name);
out.println(name + ":");
out.println(value); }%>
7.exception对象
exception对象是一个例外对象,当一个页面在运行过程中发生了例外,就产生这个对象。如果一个JSP页面要应用此对象,就必须把isErrorPage设为true,否则无法编译。他实际上是java.lang.Throwable的对象
<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
<%
try
{
int result=1/0;
}
catch(Exception e)
{
out.println("throwerror2.jsp:"+e.getMessage());
}
%>
</body>
</html>
8.pageContext对象重点
pageContext对象提供了对JSP页面内所有的对象及名字空间的访问,也就是说他可以访问到本页所在的SESSION,也可以取本页面所在的application的某一属性值,他相当于页面中所有功能的集大成者,它的本类名也叫pageContext。
<body>
<%
pageContext.setAttribute("session2","hello" , pageContext.SESSION_SCOPE);
%>
</body>
9.config对象
config对象是在一个Servlet初始化时,JSP引擎向它传递信息用的,此信息包括Servlet初始化时所要用到的参数(通过属性名和属性值构成)以及服务器的有关信息(通过传递一个ServletContext对象)
<%@page contentType="text/html;charset=GB2312"%>
<html>
<body>
<p>客户服务信箱:<%=config.getInitParameter("email")%>
<p>客户服务热线:<%=config.getInitParameter("phone")%>
<p>客户服务QQ号:<%=config.getInitParameter("qq")%>
</body>
</html>