struts控制器中使用new ActionForward和mapping.findForward的區別
struts控制器中使用new ActionForward和mapping.findForward的區別
request.setAttribute("list", new Integer(0));
return new ActionForward("/success.jsp");
request.setAttribute("list", new Integer(0));
return mapping.findForward("fail");
當使用 return new ActionForward("/success.jsp");的時候相當于還是同一個request請求,所以可以攜帶參數setAttribute過去。
無論 <forward
name="succ"
path="/success.jsp"
redirect="true" />//無論此處的redirect是true還是false。
當使用 return mapping.findForward("fail");的時候如果 redirect="true",相當于還是另外一個request請求,所以不能攜帶參數setAttribute過去。
要想還是使用同一個request,獲取到參數,則把
<forward
name="succ"
path="/success.jsp"
redirect="false" />//此處的redirect改為false。另外,此處不設置的話默認redirect="false"。
無論在任何情況下使用
request.getSession().setAttribute("a", "sssss");都可以傳遞參數。
在頁面處獲取 <%=request.getSession().getAttribute