HttpServletRequest 类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下区别:
(1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法
(2)当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数,例如提交表单,超链接(***?parameter=aaa)
(3)当两个Web组件之间为转发关系时,转发目标组件通过getAttribute()方法来和转发源组件共享request范围内的数。例如
RequestDispatcher rd = request.getRequestDispatcher(logoutURL);
request.setAttribute("parameter", "aaa");
rd.forward(request, response);
综上,由于没有setParameter方法,所以如果想要在forward转发时改变参数值,只能使用request.setAttribute来改变原有参数值。