您的位置:首页 > 编程语言 > Java开发

javaweb 常用内置对象

2016-04-12 16:01 609 查看

1.作用范围

pageContext:页面容器,默认在当前页面中起作用

request:在一次服务器跳转中有效。通过超链接跳转,地址栏改变,属于客户端跳转,request无效。request表示客户端的请求,一次请求服务器只会给予一次回应。如果请求的同时地址栏改变了,它也相当于一次请求,那么第一次请求的内容就已经消失了,无法取得。

session:在一个浏览器中始终有效。每一个新的浏览器连接上服务器后就是一个新的session,表示每一位不同的上网者各自的属性,所以新的浏览器打开后无法取得其它session设置的属性。

application:在同一台服务器活动范围内所有用户可见,不管何种跳转。不过设置过多会影响服务器性能。

注意:
<jsp:forward page=""/>
属于服务器跳转,无条件直接跳转

response.setHeader()和response.sendRedirect()通过头信息跳转方式的属于客户端跳转

只有服务器端跳转才能够将request范围的属性保存到跳转页

如果使用的是服务器跳转,则执行到跳转语句时会立刻进行跳转;如果使用客户端跳转,则是在整个页面执行完之后才执行跳转。

2.各内置对象常用法法

pageContext进行属性设置,方法:

public abstract void setAttribute(java.lang.String name,java.lang.Object o,int scope)

第四个参数指定page属性范围。较少使用。

内置对象共有方法:

public void setAttribute(String name,Object c):设置属性的名称及内容

public Object getAttribute(String name):根据属性名称

public void removeAttribute(String name):删除指定的属性

1).request对象

方法:

public String getParameter(String name):接收客户端发来的请求参数内容
public String[] getParameterValues(String name):取得客户端发来的一组请求参数内容
public Enumeratioin getParameterNames():取得全部请求参数的名称
void setCharacterEncoding(String env):设置统一的请求编码
public Httpsession getSession():取得当前的session对象
public String getContextPath():取得上下文资源路径


eg:

Enumeration enu = request.getParameterNames();
while(enu.hasMoreElements()){
String paramName = (String)enu.nextElement();
if(paramName.startsWith("**"){
String[] paramValue = request.getParameterValues(paramName);
for(int x=0;x<paramValue.length;x++){
System.out.println(paramValue[x]);
}
}else{
String paramValue = request.getParameter(paramName);
System.out.println(paramValue);
}
}


2).response对象

方法:
public void addCookie(Cookie cookie):向客户端加加Cookie
public void setHeader(String name,String value):设置回应的头信息
public void sendRedirect(String location):页面跳转


eg:

response.setHeader("refresh","2;URL=XXX.html");//两秒后跳转


3).Cookie对象

方法;
public Cookie(String name,String value):实例化Cookie对象,同时设置Cookie的名称和内容
public String getName():取得Cookie的名称
public String getValue():取得Cookie的内容
public void setMaxAge(int expiry):设置Cookie的保存时间,以秒为单位


4).Session对象

public String getId():取得Session ID
public boolean isNew():判断是否是新的session(新用户)
public void invalidate():让session失效
public Enumeration getAttributeNames():得到全部属性的名称


5).application对象

方法:
String getRealPath(String path):得到虚拟目录对应的绝对路径,常用于文件上传,确保绝对路径有效


6).config对象

方法:
public String getInitParameter(String name):取得指定名称的初始化参数内容
public Enumeration getInitParameterNames():取得全部的初始化参数名称
需要修改web.xml置置初始化参数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java web 对象