<jsp:forward page="success.jsp"></jsp:forward>
和
request.getRequestDispatcher("fail.jsp").forward(request,response);
有什么区别呢?
------解决方案--------------------
本质都一样,只是第一种是以标签的形式使用而已
------解决方案--------------------
servlet只有两个概念,requst,response,jsp转换后的源代码
if (true) {
_jspx_page_context.forward("success.jsp");
return;
}
out.write('\r');
out.write('\n');
request.getRequestDispatcher("fail.jsp").forward(request,response);
标签用了下面都不会运行了,return 了
_jspx_page_context 是PageContext接口,tomcat:org.apache.jasper.runtime.PageContextImpl实现部分:context.getRequestDispatcher(path).forward(request, response);
context是ServletContext
处理过程有点区别,其它都一样
------解决方案--------------------
3楼正解。
而且,上面的大哥哥们,forward正确的应该叫"转向"吧,redirect才叫"重定向"吧,这两个是有严格区别的