JSP内建对象(二)

      上一章主要讲到JSP内建对象的概念;这次主要讲一些内建对象的方法。

 1、   Request对象主要方法:

getAttribute(String name)  返回name属性值。

getAttributeNames()  返回request对象所有属性名字。

getCookies()  返回客户端的cookies对象。

getHeader(String name)  获得HTTP协议定义的文件头信息。

getHeaders(String name)  返回指定名字的request Header的所有值。

getMethod()  获得客户端向服务器端传送数据的方法。

getParameter(String name)  获得客户端传送给服务器端的参数值。

getParameterNames()  获得客户端传送给服务器端的所有参数的名字。

getParameterValue(String name)  获得指定参数的所有值。

getProtocol()  获取客户端向服务器端传送数据所依据的协议名称。

getQueryString()  获得查询字符串。

getRequestURI()  获取发出请求字符串的客户端地址。

getRemoteAddr()  获取客户端的IP地址。

getRemoteHost()  获取客户端的名字。

getServerName()  获取服务器的名字。

getServletPath()  获取客户端所请求的脚本文件的文件路径。

getServerPort()  获取服务器的端口号。

setAttribute(String name , java.lang.Object objt)  设置名字为namerequest参数的值,该值是由java.lang.Object类型的objt指定。

 

实例[Request.jsp]

<html>

<body>

<h1> Request Information</h1>

<hr>

JSP Request Method:<%= request.getMethod() %>

<br>

Request URI:<%= request.getRequestURI() %>

<br>

Request Protocol:<%= request.getProtocol() %>

<br>

Servlet Path:<%= request.getServletPath() %>

<br>

Remote User:<%= request.getRemoteUser() %>

<br>

Remote Address:<%= request.getRemoteAddr() %>

<br>

Remote host:<%= request.getRemoteHost() %>

<br>

Path info:<%= request.getPathInfo() %>

<br>

Path translated:<%= request.getPathTranslated() %>

<br>

Query String:<%= request.getQueryString() %>

<br>

Content Length:<%= request.getContentLength() %>

<br>

Content Type:<%= request.getContentType() %>

<br>

Server Name:<%= request.getServerName() %>

<br>

Server Port:<%= request.getServerPort() %>

<br>

Authorization Scheme:<%= request.getAuthType() %>

<hr>

The Browser you are using is <%= request.getHeader("User-Agent") %>

<hr>

</body>

</html>

 

2、  Response对象主要方法:

addCookie(Cookie cook)  添加一个cookie对象,用来保存客户端的用户信息。

addHeader(String name , String value)  添加HTTP文件头信息。

containsHeader(String name)  判断指定名字的HTTP文件头是否已经存在。

sendError(int)  向客户端发送错误的信息。

setHeader(String name , String value)  设置指定名字的HTTP文件头的值。

 

实例:定时刷新[refresh.jsp]

<%@ page contentType="text/html;charset=GB2312" %>

<%@ page import="java.util.Date" %>

<html>

<head>

<title>定时刷新页面</title>

</head>

<body>

<b>本页用来说明response对象</b>

<br>

<b>当前时间为:</b>

<% response.setHeader("refresh","10"); %>

<%

out.println(new Date());

%>

</body>

</html>

 

3、  Out对象主要方法:

out.print/println (Boolean | char | char[] | double | float | int | long | object | string |)  输出各种类型的数据。

out.newLine()  输出一个换行字符。

out.flush()  输出缓冲区里的数据。

out.close()  关闭输出流。

out.clearBuffer()  清除缓冲区里的是数据,并把数据输出到客户端。

out.clear()  清除缓冲区里的是数据,但不会把数据输出到客户端。

out.getBufferSize()  获得缓冲区的大小。

out.getRemaining()  获取缓冲区中没有被占用的空间的大小。

out.isAutoFlush()  返回布尔值。

 

4、  Session对象主要方法:

getAttribute(String name)    获取与指定名字name相联系的信息。

getAttributeNames()  返回session对象中存储的每一个属性对象。

getCreationTime()    返回session被创建的时间。

getId()  返回唯一的标识,为每一个session而产生。

getLastAccessedTime()    返回当前session对象最后被客户发送的时间。

getMaxInactiveInterval() 返回总时间(秒)。

removeAttribute(String name) 删除与指定名字name的相联系的信息。

setAttribute(String name , java.lang.object value)   设置指定名字name的属性值value,并存储在session对象中。

 

5、  PageContext对象主要方法:

getAttribute scope() 检索一个特定的已经命名对象的范围。

findAttribute()  用来按照页面请求、会话以及应用程序范围的顺序实现对某个已经命名属性的搜索。

setAttribute()   用来设置默认页面的范围或特定范围之中的已命名对象。

removeAttribute()    用来删除默认页面范围或特定范围之中已命名的对象。

 

6、  Application对象主要方法:

getAttribute(String name)    返回由name指定的名字application对象的属性的值。

getAttributeNames()  返回所有application对象的属性的名字。

getInitParameter(String name)    返回由name指定的名字的application对象的某个属性的初始值。

getServletInfo() 返回servlet编译器当前版本信息。

setAttribute(String name , Object object)    设置指定名字name的application对象的属性值object.

 

实例:在线人数统计[online.jsp]

<%@ page contentType="text/html;charset=gb2312" %>

<body οnunlοad="javascript:cancel();">

<%

Integer i = (Integer)application.getAttribute("counter");

String name = (String)application.getAttribute("onlineName");

//StringBuffer total = new StringBuffer(name);

%>

<font color="blue">

<% out.println((String)session.getAttribute("username")); %>您好:

</font>

<br>

<font color="red">

当前在线人数: <%= i %>

</font>

<br>

<font color="green">

在线人总名册: <% out.println(name); %>

</font>

<script language="javascript">

<!--

function cancel(){

<%

if(session.getAttribute("username")!="" && session.getAttribute("username")!=null){

//cancelname 为注销人名

String cancelname;

cancelname=(String)session.getAttribute("username");

//out.println(cancelname);

 

//j为cancelname在总名册中的初始位置

//k为cancelname的总长度

//t为cancelname在总名册中的结束位置

int j,k,t;

j=name.indexOf(cancelname);

k=cancelname.length();

t=j+k;

//out.println(j);

//out.println(t);

StringBuffer total=new StringBuffer(name);

total=total.delete(j-4,t);

i=new Integer(i.intValue()-1);

application.setAttribute("counter",i);

name=(String)total.toString();

application.setAttribute("onlineName",name);

//out.println("window.alert("+name+")");

session.setAttribute("username","");

}

%>

}

-->

</script>

</body>

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值