forward redirect

1. forward:

   1.1 request.getRequestDispatcher("newUrl").forward(request,response).

   1.2 forward操作,是request请求指向新的地址,但并没有使IE重新改写URL,IE仍旧采用request的url

   1.3 servlet中,forward不能带参数指向新地址,只能以request.setAttribute(key,value)方式传递给新的url中。

在新url中,使用request.getAttribute(key)获取参数值。

   1.4 整个forward跳转过程中,没有结束一次request→response过程,request一直有效,所以可以使用1.3中所述的request.getAttribute(key)方式获取参数值。

   1.5 不能指向另一个context的地址

2. redirect

   2.1 response.sendRedirect("newUrl")

   2.2 redirect重定向操作,重写IE的url,结束当前request请求,使得当前request在新的url中失效

   2.3 新的url中,IE新建request

   2.4 可以以url?p1=p1v&p2=p2v方式传递参数给新的url

   2.5 可以指向自己、其他context范围中的url

你可能感兴趣的:(redirect)