Servlet小总结。

来源:互联网 发布:龙神契约武神进阶数据 编辑:程序博客网 时间:2024/05/18 17:03

tomcat本身就是一个web服务器(java软件),浏览器发送请求过来后,tomcat就调用了自身的组件去处理该请求,tomcat会从线程池中捞取一个线程,去调用相应的业务功能处理。(响应过程)


常用的域对象

request 请求发起的时候,tomcat服务器创造该对象,当做出响应的一刹那,就失效了

session tomcat服务器      主动   创建的,它是会话对象,相当于每个客户端的私人仓库。包存在tomcat内存当中的,是非常稀缺的资源。session的生命周期是由服务器决定的。两种方式设置session的生命周期,1,session的api提供了方法去设置session的时间(秒)2.通过配置web.xml指定该项目的session的超时时间,如果不设置默认是30分钟。

request.getsession()方法,这个方法会获取tomcat给该用户创建的session对象,如果不存在,就会创建一个session。

cookie也是会话对象,来自服务器的发送(response.addCookie(new Cookie())),保存在浏览器当中,既可以保存在浏览器的内存,也可以保存在服务器的内存中,cookie只能存储key value结构的字符串,而且存储的数据量很小,不超过2kb。

cookie和session的关系 当tomcat服务器主动创建session的时候,会隐形的向浏览器发送一个cookie,该cookie的key是(JSESSIONID) value是session的id。该 cookie是存储在此浏览器内存当中的,所以不同的浏览器访问tomcat的时候,tomcat都会找到对应的session对象

servletcontext

context叫上下文,每一个web项目都对应着一个context。servletcontext对象是servlet项目在启动完毕之后创建的,tomcat关闭时销毁。可以理解为他是一个公共的仓库,意味着项目下面所有的servlet对象共享同一个servletcontext资源。

请求的转发和重定向

 request.getRequestDispatcher("").forword();

请求的转发,还是同一个request,request作用域当中的数据还在,浏览器url是不变的。

response.sendRedirect("") 

重定向就意味着先响应,后定向(改变浏览器的url),再请求,再响应,本质上是两次请求,意味着request的数据失效了

原创粉丝点击