域对象

域对象的通用的方法:

setAtrribute(String name,Object obj);

getAttribute(String name);

removeAttribute(String name);

ServletContext

ServletContext代表是一个web应用的环境(上下文)对象,ServletContext对象 内部封装是该web应用的信息,ServletContext对象一个web应用只有一个

作用范围:

整个web应用(所有的web资源都可以随意向 servletcontext域中存取数据,数据可以共享)

作用:获得web应用中任何资源的绝对路径

方法:String path = context.getRealPath(相对于该web应用的相对地址);

写一个相对,得到一个绝对的path

ServletContext是一个域对象

获得ServletContext对象

1)ServletContext servletContext = config.getServletContext();

2)ServletContext servletContext = this.getServletContext();

生命周期?

创建:该web应用被加载(服务器启动或发布web应用(前提,服务器启动状 态))

销毁:web应用被卸载(服务器关闭,移除该web应用)

request

request域的作用范围:一次请求中

(1)request完成请求转发

获得请求转发器----path是转发的地址

RequestDispatcher getRequestDispatcher(String path)

通过转发器对象转发

requestDispathcer.forward(ServletRequest request, ServletResponse response)

生命周期

创建:访问时创建request

销毁:响应结束request销毁

域的作用范围:一次请求中

转发与重定向的区别?

1)重定向两次请求,转发一次请求

2)重定向地址栏的地址变化,转发地址不变

3)重新定向可以访问外部网站 转发只能访问内部资源

4)转发的性能要优于重定向

 

注意:客户端地址与服务器端地址的写法?

 

客户端地址:

 

是客户端去访问服务器的地址,服务器外部的地址,特点:写上web应用名

 

直接输入地址:

 

重定向

 

服务器端地址:

 

服务器内部资源的跳转的地址,特点:不需要写web应用的名称

 

转发

 

Session技术:存到服务器端 借助cookie存储JSESSIONID

HttpSession session = request.getSession();

 

setAttribute(name,value);

getAttribute(name);

 

session生命周期

创建:第一次指定request.getSession();

销毁:服务器关闭、session失效/过期、手动session.invalidate();

session作用范围:默认一次会话中

原文地址:https://www.cnblogs.com/longmingyeyu/p/12898856.html