您的位置 首页 java

java知识点

servlet 中的三种请求转发各有什么区别


  • 在使用Servlet处理请求转发时,一般有三种方法。

  • 1.response.sendRedirect(“url”);

  • 2. request .getRequestDispatcher(“url”).include(request,response);

  • 3.request.getRequestDispatcher(“url”).forward(request,response);

  • 1、 forward:是指转发,将当前request和response对象保存,交给指定的url处理。并没有表示页面的跳转,所以地址栏的地址不会发生改变。

  • 2、 redirect:是指重定向,包含两次浏览器请求,浏览器根据url请求一个新的页面,所有的业务处理都转到下一个页面,地址栏的地址会变发生改变。

  • 3、 include:意为包含,即包含url中的内容,进一步理解为,将url中的内容包含进当前的servlet当中来,并用当前servlet的request和respose来执行url中的内容处理业务.所以不会发生页面的跳转,地址栏地址不会发生改变。

详述 Session 机制,session是什么?什么时候生成?在哪里?为什么需要?


  1. session是一次浏览器和服务器的交互的会话

  2. 每次我们访问一个页面,如果有开启session,就会自动生成一个session_id 来标注是这次会话的唯一ID,同时也会自动往 cookie 里写入一个名字为JSESSIONID的变量,它的值正是session_id,当这次会话没结束,再次访问的时候,服务器会去读取这个JSESSIONID的cookie是否有值有没过期,如果能够读取到,则继续用这个session_id,如果没有,就会新生成一个session_id,同时生成JSESSIONID这个cookie。

  3. 存储在服务器的内存中,也可以持久化到file

  4. http协议是无状态的,可以通过session记住当前用户

WEB.xml文件常用的的配置


JavaWeb中四大域对象的作用范围


  • PageContext域:作用范围是整个 JSP 页面,是四大作用域中最小的一个;生命周期是当对JSP的请求时开始,当响应结束时销毁。

  • ServletRequest域:作用范围是整个请求链(请求转发也存在);生命周期是在 service 方法调用前由服务器创建,传入service方法。整个请求结束,request生命结束。

  • HttpSession域:作用范围是一次会话。生命周期是在第一次调用request.getSession()方法时,服务器会检查是否已经有对应的session,如果没有就在内存中创建一个session并返回。当一段时间内session没有被使用(默认为30分钟),则服务器会销毁该session。如果服务器非正常关闭(强行关闭),没有到期的session也会跟着销毁。如果调用session提供的invalidate() ,可以立即销毁session。

  • 注意:服务器正常关闭,再启动,Session对象会进行钝化和活化操作。同时如果服务器钝化的时间在session 默认销毁时间之内,则活化后session还是存在的。否则Session不存在。 如果 JavaBean 数据在session钝化时,没有实现Serializable 则当Session活化时,会消失。

ServletContext 域:作用范围是整个Web应用。当Web应用被加载进容器时创建代表整个web应用的ServletContext对象,当服务器关闭或Web应用被移除时,ServletContext对象跟着销毁。

软件开发过程一般有几个阶段?每个阶段的作用


  1. 需求分析

  2. 系统设计

  3. 详细设计

  4. 编码

  5. 测试

  6. 软件交付准备

  7. 验收

文章来源:智云一二三科技

文章标题:java知识点

文章地址:https://www.zhihuclub.com/175801.shtml

关于作者: 智云科技

热门文章

网站地图