RequestDispatcher接口中的include()步骤和forward()方法的区别

RequestDispatcher接口中的include()方法和forward()方法的区别

请求转发中 RequestDispatcher 接口中的 include ()方法和 forward ()方法的区别

//req 从客户浏览器获取信息

//resp 向客户浏览器发送信息

//forward ()方法的调用

ServletContext context=getServletContext();

RequestDispatcher rd=context.getRequestDispatcher(“/XXXX”);

rd.forward(req.resp);

//include ()方法的调用

RequestDispatcher rd=req.getRequestDispatcher(“XXXXX”);

Rd.include(req.resp);

// 传入的路径参数没有 ’/’ 的含义:没有斜杠表示是相对于当前 Servlet 的路径

区别:

  forward ()方法执行完后,它下面的代码将不再执行。

  include ()方法执行玩后,下面的代码继续执行。

  注意:如果 include ()方法调用的那个 Servlet 中调用了 out.close() 关闭输出流对象;因为一旦关闭,响应将被提交,哪么 include() 方法下面的代码也将不再执行。