(1)方法
void setAttrbute(String name, Object o):设置属性
Object gettribute(String name):获取指定的属性
Enumeration getAttributeNames():获取所有的属性的名字组成的Enumeration
removeAttribute(String name):移除指定的属性
(2)域对象:
pageContext:属性的作用范围仅限于当前JSP页面
request:属性的作用范围仅限于同一个请求(在有转发的情况下可以跨页面获取属性值)
session:属性的作用范围仅限于一次回话(浏览器打开直到关闭为止称为一次会话),并在此期间会话不能失效
application:属性的作用范围限于当前应用,是范围最大的属性作用范围,只要在一处设置属性,在其他的JSP,Servlet都可以获取到。
(3) 请求的转发和重定向:
区别:请求的转发转发出了一次请求,而重定向则发出了两次请求
具体:
①.请求的转发:地址栏是除此发出请求的地址
请求的重定向:地址栏不再是初次发出请求的地址,而是最后响应的那个地址
②.请求的转发:在最终的Servlet中,request对象和中转的那个request是同一个对象
请求的重定向:在最终的Servlet中,request对象和中转的那个request对象不是同一个对象
③.请求的转发:只能转发给当前WEB应用的资源
请求的重定向:可以重定向到任何资源
④.请求的转发: / 代表当前WEB应用的根目录
请求的重定向: / 地表当前WEB站点的根目录(http://localhost:8080/)
请求转发的代码:
//调用HttpServletRequest的getRequestDispatcher()方法获取RequestDispatcher对象
//调用getRequestDispatcher()需要传入转发的地址
String path = "要转发的地址";
RequestDispatcher requestDispatcher=request.getRequetDispatcher("/"+path);
//调用HttpServletRequestd forward(request,response)进行请求的转发
requestDispatcher.forward(request,response);
请求的重定向代码:
//执行请求的重定向,直接调用reponse.sendRedirect(path)方法
//path为要重定向的地址
String path = "要重定向的地址";
response.sendRedirect(path);