HttpServletRequest类既有getAttribute()方法,也由getParameter()方法,这两个方法有以下区别:
(1)HttpServletRequest类有setAttribute()方法,而没有setParameter()方法
(2)当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数,例如假定welcome.jsp和authenticate.jsp之间为链接关系,welcome.jsp中有以下代码:
authenticate.jsp
或者:
补充一下,HttpServletRequest是接口,不是类,它封装了http协议的服务器响应相关的内容。String getParameter(String ctlName)是HttpServletRequest接口中的方法,可取得用户在表单或URL中向服务器传送的相应参数,其中的ctlName代表html表单中控件的名称或在UTL地址中传递的参数的名称。这个接口中没有setParameter()方法。用法是:
String username = request.getParameter("name");
setAttribute(String key,Object value)是HttpSession接口中的方法,其中key参数指定了存入对象的标识,以后可利用此标识检索存入的数据。value参数指定了存入对象的实际内容。用法是:
HttpSession session = request.getSession();//获得HttpSession对象
session.setAttribute("uname",name);//将name值存入“uname”标识
String username = (String)session.getAttribute("uname");//检索“uname”中指定的数据,即把“uname”中的name值赋于username。
setattribute是设置属性,setParameter是设置参数