request,response,session,application四者之间的作用域联系以及各自的运行机制
2017-10-22 17:46
531 查看
request:服务器获取用户请求;
response:服务器答复用户请求的资源;
session:用户使用服务器开始到结束的过程;
application:网站服务器启动到停止的过程;
在asp中,作用域可分为四种:
①仅仅用于JSP中的page其作用域为在当前页面有效 (这里了解就好)
②request其作用域为在当前http请求中有效
③session其作用域为在当前会话中有效
④application其作用域为在所有应用程序中有效,应用程序就是访问的网站服务器
在上面提到了四个的作用域,作用域详细的说就是“信息共享的范围”,也就是一个信息能够在多大的范围内有效。
当用户通过浏览器客户端向网站服务器提出请求时,就是一个request过程,这个时候网站服务器收到客户端的request,网站服务器通过servlet或者JSP对用户发送的request进行出理,处理完后服务器通过response将处理完后的资源发送给客户端,客户端收到资源在浏览器显示出来。
request就是一个HTTP客户端请求,处理request可能需要多个Servlet合作,
几个Servlet之间可以通过某种方式传递信息,但这个信息在请求结束后就无效了
response就是一个HTTP服务器答复,将servlet处理结果答复给客户端
session与用户是一对一关系,一个web应用程序可以同时有多个用户在线,每个用户都有对应唯一的session,一个session就是一个用户从开始使用客户端到结束使用客户端的过程,这个过程可以有多个request和response
application与用户是一对多关系,类似于一个web应用程序对应于多个用户在线使用,每个web应用程序对应只有一个aaplication,在一起协同工作以完成某项任务的一组
ASP 文件称作应用程序(application)。ASP 中的 Application 对象用于将这些文件捆绑在一起。application就是网站服务器从启动到停止的过程。
session作用域比较容易理解,同一浏览器访问多次,在这多次访问之间传递信息,就是session作用域。
session是通过HttpSession接口实现的。
Object HttpSession.getAttribute(String name) 从session中获取信息
void HttpSession.setAttribute(String name, Object value) 向session中保存信息
而通过HttpServletRequest.getSession()方法可以获得HttpSession对象。
HttpSession HttpServletRequest.getSessio()
获取当前请求所在的session的对象。
session的开始容易判断(浏览器发出第一个HTTP请求即可认为会话开始), 而结束就不好判断了,因为客户端浏览器结束会话时并不会告知服务器,所以只能通过这种方法判断:如果一定的时间内客户端没有反应,则认为会话结束。 Tomcat的默认值为120分钟,但这个值也可以通过 HttpSession
的 setMaxInactiveInterval 方法来设置。
void setMaxInactiveInterval(int interval) 设置绘画的超时值。
如果想主动让会话结束,如用户单击“注销”的时候,可以使用 HttpSession 的 invalidate 方法:
void invalidate() 强制结束当前session。
application
application作用域就是服务器启动到关闭的整段时间, 在这个作用域内设置的信息可以被所有应用程序使用。
application作用域上的信息传递就是通过ServetContext实现的。
Object getAttribute(String name) 从application中获取信息。
void setAttribute(String name, Object value)
向application作用域中设置信息。
总结
可以看到,每个作用域除了实现接口不同、意义不同之外,它们的使用方法和作用都是相同的, 都是通过
getAttribute 和 setAttribute 方法进行信息传递。
作用域 意义 实现接口
request HTTP请求内 HttpServletRequest
session HTTP会话内 HttpSession
application 服务器生命周期内 ServletContext
response:服务器答复用户请求的资源;
session:用户使用服务器开始到结束的过程;
application:网站服务器启动到停止的过程;
在asp中,作用域可分为四种:
①仅仅用于JSP中的page其作用域为在当前页面有效 (这里了解就好)
②request其作用域为在当前http请求中有效
③session其作用域为在当前会话中有效
④application其作用域为在所有应用程序中有效,应用程序就是访问的网站服务器
在上面提到了四个的作用域,作用域详细的说就是“信息共享的范围”,也就是一个信息能够在多大的范围内有效。
当用户通过浏览器客户端向网站服务器提出请求时,就是一个request过程,这个时候网站服务器收到客户端的request,网站服务器通过servlet或者JSP对用户发送的request进行出理,处理完后服务器通过response将处理完后的资源发送给客户端,客户端收到资源在浏览器显示出来。
request就是一个HTTP客户端请求,处理request可能需要多个Servlet合作,
几个Servlet之间可以通过某种方式传递信息,但这个信息在请求结束后就无效了
response就是一个HTTP服务器答复,将servlet处理结果答复给客户端
session与用户是一对一关系,一个web应用程序可以同时有多个用户在线,每个用户都有对应唯一的session,一个session就是一个用户从开始使用客户端到结束使用客户端的过程,这个过程可以有多个request和response
application与用户是一对多关系,类似于一个web应用程序对应于多个用户在线使用,每个web应用程序对应只有一个aaplication,在一起协同工作以完成某项任务的一组
ASP 文件称作应用程序(application)。ASP 中的 Application 对象用于将这些文件捆绑在一起。application就是网站服务器从启动到停止的过程。
session作用域比较容易理解,同一浏览器访问多次,在这多次访问之间传递信息,就是session作用域。
session是通过HttpSession接口实现的。
Object HttpSession.getAttribute(String name) 从session中获取信息
void HttpSession.setAttribute(String name, Object value) 向session中保存信息
而通过HttpServletRequest.getSession()方法可以获得HttpSession对象。
HttpSession HttpServletRequest.getSessio()
获取当前请求所在的session的对象。
session的开始容易判断(浏览器发出第一个HTTP请求即可认为会话开始), 而结束就不好判断了,因为客户端浏览器结束会话时并不会告知服务器,所以只能通过这种方法判断:如果一定的时间内客户端没有反应,则认为会话结束。 Tomcat的默认值为120分钟,但这个值也可以通过 HttpSession
的 setMaxInactiveInterval 方法来设置。
void setMaxInactiveInterval(int interval) 设置绘画的超时值。
如果想主动让会话结束,如用户单击“注销”的时候,可以使用 HttpSession 的 invalidate 方法:
void invalidate() 强制结束当前session。
application
application作用域就是服务器启动到关闭的整段时间, 在这个作用域内设置的信息可以被所有应用程序使用。
application作用域上的信息传递就是通过ServetContext实现的。
Object getAttribute(String name) 从application中获取信息。
void setAttribute(String name, Object value)
向application作用域中设置信息。
总结
可以看到,每个作用域除了实现接口不同、意义不同之外,它们的使用方法和作用都是相同的, 都是通过
getAttribute 和 setAttribute 方法进行信息传递。
作用域 意义 实现接口
request HTTP请求内 HttpServletRequest
session HTTP会话内 HttpSession
application 服务器生命周期内 ServletContext
相关文章推荐
- Java的运行平台以及核心机制 JRE JVM JDK之间的联系
- Java的运行平台以及核心机制 JRE JVM JDK之间的联系
- jsp内置对象out、request、response、session、application五大常用对象以及Page、pageContext、exception、config
- JSP内置对象--pageContent,request,response,session,application,config,out,page,exception
- jsp 的四个作用域 :page、request、session和application的区别
- jsp 的四个作用域 :page、request、session和application的区别
- [Struts2] 如何访问或添加request/session/application属性, 以及获取对象.
- application,session,cookie三者之间的区别和联系
- Structs2中的参数传递方式以及对Web对象(request,session,application)的操作
- jsp的四个作用域:page request session application 的区别
- jsp变量作用域,page,request,session和application
- 第十五节:HttpContext五大核心对象的使用(Request、Response、Application、Server、Session)
- jsp的四个作用域: page、request、session和application的区别
- request、response、session、application、out、pagecontext、config、page、exception
- jsp 的四个作用域 :page、request、session和application的区别 .
- struts2中访问和添加Application、session以及request属性
- Action 获取 request response session application
- session对象在web开发中的创建以及sessionId生成并返回客户端的运行机制
- JSP中的四大作用域:page、request、session、application
- servlet三大作用域:request,session,application