请求转发

servletdoGet方法,下面哪几个说法是错误的(多选)

a.redirect到一个jsp页面时,之前doGet 放在request中的对象都会丢失

b.redirect到一个jsp页面时,之前doGet 放在session中的对象都会丢失

c.forward到一个jsp页面时,之前doGet 放在request中的对象都会丢失

d.forward到一个jsp页面时,之前doGet 放在session中的对象都会丢失

 

 

请求转发:即Servlet将请求传递给别的Servlet及服务器中其他资源,无需客户端任何行为

与重定向的区别:重定向是让客户端完成,有2次请求,URL地址栏改变;而转发则是服务器完成,只有一次请求,URL地址栏不改变。
如何请求转发:1.获得转发器对象:1.1调用请求对象的getRequestDispatcher(path)方法,path参数为相对于当前Servlet的资源路径
          1.2调用ServletContext的getNamedDispatcher(servlet-name)方法
            2.调用转发器对象的转发方法:2.1调用forward()方法,将请求和响应对象作参数传入,该方法会将请求完全移交给另一资     源处理,并有另一资源将响应发给客户端
                         2.2调用include()方法,将请求和响应对象作参数传入,该方法会将请求暂时移交给另一资     源处理,另一资源处理完后在返回原来的Servlet,并有原来的Servlet请响应发给客户端

 

 

因此答案是b,c,d

你可能感兴趣的:(jsp,servlet,session,服务器,Path,include)