Java Web应用开发基础知识

  最近在上java Web应用开发,对有的知识点总结一下。
  
一.Servlet的生命周期
   1.初始化阶段,调用init()方法。当第一次访问的时候,才会初始化对应的Servlet
   2.响应客户请求阶段,调用service()方法-->doGet/doPost方法
   3.终止阶段,调用destroy()方法,当tomcat容器关闭的时候,会自动执行销毁的方法destroy。

二.HTTP中Get请求和POST请求的区别
   1.get请求会将提交的数据附加到URL的后面;POST请求会以Form Data的方式提交。
   2.get请求提交的数据大小有限制;post请求提交数据没有大小限制。
   3.get请求,用户名和密码将明文出现在URL上,数据不安全,所以post请求比get请求安全.

三.Servlet转发机制
   1.forword转发:request.getRequestDispatcher(" ").forward(request, response);
  
   2.include转发:request.getRequestDispatcher(" ").include(request, response);
   3.重定向转发:response.sendRedirect(" ");

四.会话跟踪
   会话:一个客户的多次请求
   会话跟踪:分辨不同客户的请求
   会话跟踪的技术:Cookie技术,HttpSession,隐藏表单域,URL重写
   会话跟踪的原理:当第一次请求服务器的时候,在服务器中会自动创建Session对象,服务器在响应时,会将Session对象的ID通过临时Cookie的方式响应给浏览器,浏览器在以后的请求过程中,都会先获取临时Cookie中的SessionID,在请求过程中,会带上SessionID一起发送给服务器,服务器收到请求后,会先判断SessionID是否存在,如果不存在,说明是第一次请求,如果存在,证明这次请求和上次请求是同一个浏览器发送的,如果有多个浏览器同时请求服务器,服务器会根据SessionID找到对应的浏览器。

五.Cookie与Session的区别
    1.Cookie是存在浏览器中的,Session是存在服务器中的
    2.Cookie的安全性要低于Session
    3.Cookie可能会被用户禁用
    4.Session的数据是存在服务器内存中,关掉浏览器,会清空Session,临时性Cookie存在浏览器的缓存中,关掉浏览器,会清空,永久性Cookie是存在临时文件中,到达有效期前,一直存在。


  

你可能感兴趣的:(Web,servlet,session,cookie,会话机制)