JSP内置对象

来源:互联网 发布:声音主播用什么软件 编辑:程序博客网 时间:2024/06/06 05:15

1.request对象
request对象用于获取客户端信息,每当客户端请求一个JSP页面时,JSP引擎就会制造一个新的request对象来代表这个请求。在客户端发出请求时会创建request对象,在请求结束后,会销毁request对象。
request对象提供了一系列方法来获取HTTP头信息,cookies,HTTP方法等等。
例:
requestform.jsp

<form action="requestobject.jsp" method="post">    <p>UserName: <input type="text" name="username" /> </p>    <p>Age: <input type="text" name="age" /></p>    <input type="submit" value="提交" /></form>

requestobject.jsp

<%String username=request.getParameter("username");String strage=request.getParameter("age");int age=Integer.parseInt(strage);%><!-- 输出表单域的值 --><%="UserName:"+username %><br><%="Age:"+age %>

request.getParameter(“paramName”)获取的是单个请求参数的参数值,还可以使用request对象的getParameterNames()方法获得从客户端传递过来的所有参数的参数名。即:Enumeration params=request.getParameterNames();

<%String param="";//获取所有参数值Enumeration params=request.getParameterNames();//循环所有参数值while(params.hasMoreElements()){    param=(String)params.nextElement();    //打印参数名    out.println("ParamName: "+param+"<br>");    out.println("ParamValues: "+request.getParameter(param)+"<br>");}%>

2.response对象
它包含了从JSP页面返回客户端的所有信息,其作用域是它所在的页面。
response对象常用于设置http标题、添加cookie、设置响应内容的类型和状态、发送http重定向和编码URL。
重定向:response.sendRedirect(String url);
3.out对象
out内置对象是一个缓冲的输出流,用来向客户端返回信息。
out.println(dataType dt) 输出Type类型的值然后换行
out.getBufferSize() 获取缓冲区的大小
out.getRemaining() 获取剩余缓冲区的大小
out.flush() 刷新输出流
4.session对象
session对象是会话对象,用来记录每个客户端的访问状态。
常用方法:
getAttribute(String name)
setAttribute(String name,Object value)
5.application对象
这个对象在JSP页面的整个生命周期中都代表着这个JSP页面。
通过向application中添加属性,则所有组成web应用的JSP文件都能访问到这些属性。

<%String count=(String)application.getAttribute("count");if(count==null){    count="1";}else{    count=Integer.parseInt(count)+1+"";}application.setAttribute("count",count);%><%="<h3>count的值为:"+count+"</h3>" %>

6.pageContext对象
不仅可以设置page范围内的属性,还可以设置其他范围内的属性。通过pageContext还可以访问本页面中的所有其他对象。

<%//设置page范围内的属性pageContext.setAttribute("attributename", "page_scope");//设置request范围内的属性request.setAttribute("attributename","request_scope");//设置session范围内的属性session.setAttribute("attributename","session_scope");//设置application范围内的属性application.setAttribute("attributename","application_scope");//获取page范围内的属性String str1=(String)pageContext.getAttribute("attributename",pageContext.PAGE_SCOPE);//获取request范围内的属性String str2=(String)pageContext.getAttribute("attributename",pageContext.REQUEST_SCOPE);//获取session范围的属性String str3=(String)pageContext.getAttribute("attributename",pageContext.SESSION_SCOPE);//获取application范围的属性String str4=(String)pageContext.getAttribute("attributename",pageContext.APPLICATION_SCOPE);%>attribute在不同范围的属性值:<br><%="page范围:"+str1 %><br><%="request范围:"+str2 %><br><%="session范围:"+str3 %><br><%="application范围:"+str4 %>

7.page对象
这个对象就是页面实例的引用。它可以被看做是整个JSP页面的代表。
page 对象就是this对象的同义词。
8.config对象
在Servlet初始化时,可以通过config向Servlet传递信息。
config.getServletName();
它返回包含在<servlet-name>元素中的servlet名字
9.exception对象
用来处理页面的错误和异常。常在一个页面中使用page指令的errorPage属性,让该属性指向一个专门用于异常处理页面。
exceptiontest.jsp

<%@ page errorPage="exceptionobject.jsp" %>发生错误的位置:<br><%int a=5;int b=0;%>输出结果=<%=(a/b) %> 

exceptionobject.jsp

<%--返回exception对象的异常信息 --%><%=exception.getMessage() %> <br><%--打印异常的栈反向跟踪轨迹 --%><%exception.printStackTrace(new java.io.PrintWriter(out));%>
0 0